百度全景 SDK 为开发者提供了便捷的百度地图数据展示接口。通过以下几步操作,即可在您的应用中使用百度全景图:

全景图初始化提供了三种方式,分别如下:
- (id)initWithFrame:(CGRect)frame key:(NSString *)key;
其中,frame 为全景图所需的 frame,key 为在百度 LBS 平台申请的接入密钥。密钥申请方法
- (id)initWithFrame:(CGRect)frame;
此种初始化方法需要额外调用 setPanoramaAccessKey 设置密钥。
- (id)initWithFrame:(CGRect)frame mcX:(NSInteger)x mcY:(NSInteger)y;
此种初始化方法可以直接获取当前百度坐标对应的全景图,但仍然需要设置密钥,否则将出现未授权提示。
[self.panoramaView setPanoramaWithX:x Y:y];
为了方便开发者获取全景图,SDK 提供了坐标转换工具。利用 BaiduPanoUtils 中的方法,可以方便地完成坐标转换。
COOR_TYPE_BDLL = 1,//百度坐标COOR_TYPE_BDMC = 2,//百度墨卡托坐标COOR_TYPE_GPS = 3,//GPS原始坐标COOR_TYPE_COMMON = 4,//其他坐标,如腾讯、高德、Google 等
转换方法为:
+ (CLLocationCoordinate2D)baiduCoorEncryptLon:(double)lon lat:(double)lat coorType:(COOR_TYPE)type;
开发者可以利用转换后的坐标获取百度全景图。
地图中的每个全景图都对应一个 PID。PID 可以通过 POI 信息或经纬度获取。
- (void)setPanoramaWithPid:(NSString *)pid;
在百度地图中,POI 点对应的 ID 为 UID(因历史原因,本文不再展开说明)。开发者可以根据 UID 直接显示对应的全景图,但需要注意处理没有全景图的情况。
- (void)setPanoramaWithUid:(NSString *)uid;
在全景 SDK 2.1.0 中,引入了新的接口:
- (void)setPanoramaWithUid:(NSString*)uidtype:(BaiduPanoramaType)type;
其中,BaiduPanoramaType 表示室内或室外。由于 POI 点可能位于室内或室外,传入室内类型时会默认调用内景相册插件,以显示室内全景图。使用此方法时,请注意处理以下错误情况:
1、传入室内类型,但此 POI 没有室内全景图。
2、传入室内类型,但未添加室内相册,仍然无法显示室内全景图。
3、传入室外类型,但此 POI 没有室外全景图。
上一篇
下一篇