JAPanoView 0.1.2

JAPanoView 0.1.2

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
发布最后发布2015 年 4 月

Damien Debin 维护。



  • Javier Alonso 和 Damien Debin

这是 JAPanoView 的分支...

  • 支持最新的 iOS SDK(8.0)。
  • 添加了 Podspec

JAPanoView:开源全景查看器

JAPanoView 是一个 UIView 子类,用于通过立方全景图像渲染 360-180 度的全景视图,具有交互式平移和缩放功能。您可以向 JAPanoView 添加任何 UIView 作为热点。观看视频:http://www.youtube.com/watch?v=8g0LcuNzzNM

JAPanoView 源代码遵循 Apache 许可发布。更多信息请访问 https://apache.ac.cn/licenses/LICENSE2.0.html。示例图片来自 http://www.remedypanoramic.com/ 和 © Remedy Panoramic Design 2010。已在版权持有人的许可下包含。

JAPanoView 由 Javier Alonso 创建。 http://javieralog.blogspot.com @javieralog

您可以从 https://github.com/ddebin/JAPanoView 获取最新版本。

如何使用它

将 JAPanoView.h 和 JAPanoView.m 复制到您的项目中。确保您的项目包括以下框架

  • QuartzCore.framework
  • UIKit.framework

JAPanoView 代码使用 ARC,iOS 部署目标版本是 iOS 5.0 或更高。最新版本使用 iOS SDK 8.0 进行了测试

创建全景视图

JAPanoView *panoView = [[JAPanoView alloc] initWithFrame:self.view.bounds];
[panoView setFrontImage:[UIImage imageNamed:@"TowerHousepano_f.jpg"]
             rightImage:[UIImage imageNamed:@"TowerHousepano_r.jpg"]
              backImage:[UIImage imageNamed:@"TowerHousepano_b.jpg"]
              leftImage:[UIImage imageNamed:@"TowerHousepano_l.jpg"]
               topImage:[UIImage imageNamed:@"TowerHousepano_u.jpg"]
            bottomImage:[UIImage imageNamed:@"Down_fixed.jpg"]];
[self.view addSubview:panoView];`

热点

实例化任何 UIView 子类,并使用 addHotspot:atHAngle:vAngle: 方法将其作为热点添加,指示水平角度(方位角)和垂直角度(高度角)。要从 JAPanoView 中移除一个热点,只需在热点实例上调用 removeFromPanoView(类似于 addSubview:removeFromSuperview)。

由于任何 UIView 都可以是热点,因此您可以将任何 UIControl 添加到热点或者向热点添加任何 UIGestureRecognizer,使其具备完整的用户交互性。您还可以利用 UIView 的 convertPoint/Rect:from/toView: 方法,从热点显示弹出窗口,如您在演示项目中看到的那样。

[popover presentPopoverFromRect:hotspot.frame
                         inView:hotspot.superview
       permittedArrowDirections:UIPopoverArrowDirectionAny
                       animated:YES];

对于 UIView,还有一个属性:shouldApplyPerspective。它表示热点是否应始终渲染为与屏幕平行(shouldApplyPerspective==NO)或与视角/热点轴垂直(shouldApplyPerspective==YES;默认值)。