iPhone开发之全景展示(panoramagl)

1 //相应地方添加成员变量
2 plView = [[PLView alloc] initWithFrame:self.view.frame];
3 plView.delegate=self;
4 [self.view addSubview:plView];
5 [self.view sendSubviewToBack:plView];//送到最里端
 1 -(void)selectPanorama:(NSInteger)index
 2 {
 3     NSObject<PLIPanorama> *panorama = nil;
 4     //Spherical2 panorama example (supports up 2048x1024 texture)
 5     if(index == 0)
 6     {
 7         panorama = [PLSpherical2Panorama panorama];
 8         [(PLSpherical2Panorama *)panorama setImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_sphere2" ofType:@"jpg"]]];
 9     }
10     //Spherical panorama example (supports up 1024x512 texture)
11     else if(index == 1)
12     {
13         panorama = [PLSphericalPanorama panorama];
14         [(PLSphericalPanorama *)panorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_sphere" ofType:@"jpg"]]]];
15     }
16     //Cubic panorama example (supports up 1024x1024 texture per face)
17     else if(index == 2)
18     {
19         PLCubicPanorama *cubicPanorama = [PLCubicPanorama panorama];
20         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_f" ofType:@"jpg"]]] face:PLCubeFaceOrientationFront];
21         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_b" ofType:@"jpg"]]] face:PLCubeFaceOrientationBack];
22         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_l" ofType:@"jpg"]]] face:PLCubeFaceOrientationLeft];
23         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_r" ofType:@"jpg"]]] face:PLCubeFaceOrientationRight];
24         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_u" ofType:@"jpg"]]] face:PLCubeFaceOrientationUp];
25         [cubicPanorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_d" ofType:@"jpg"]]] face:PLCubeFaceOrientationDown];
26         panorama = cubicPanorama;
27     }
28     //Cylindrical panorama example (supports up 1024x1024 texture)
29     else if(index == 3)
30     {
31         panorama = [PLCylindricalPanorama panorama];
32         //((PLCylindricalPanorama *)panorama).isHeightCalculated = NO;
33         [(PLCylindricalPanorama *)panorama setTexture:[PLTexture textureWithImage:[PLImage imageWithPath:[[NSBundle mainBundle] pathForResource:@"pano_sphere" ofType:@"jpg"]]]];
34     }
35 }

两个下载地址:http://code.google.com/p/panoramagl/

https://github.com/menssen/panoramagl#51-with-interface-builder

另有介绍使用的:http://www.codeproject.com/Articles/60635/Panorama-360-iPod-Touch-iPhone

 

posted @ 2013-10-12 22:56  ubersexual  阅读(753)  评论(0编辑  收藏  举报