关于百度地图api的实用方法记录

解析出来的长度单位为米之前不知道百度有关于两点之间距离的计算和坐标转换,在这上面走了蛮多弯路,下面把相关使用方法记录下来,以便后续参考。

1,坐标转换

CLLocationCoordinate2D coor;
coor.latitude = _model.latitude;
coor.longitude = _model.longitude;
NSDictionary* coorDic = BMKConvertBaiduCoorFrom(coor,BMK_COORDTYPE_COMMON);
// 注意 解析出来的coorDic转换后经纬度是经过Base64加密的,所以需要揭秘下
// CommonFunc文件可以直接在网上下载
CLLocationDegrees lattude = [CommonFunc textFromBase64String[coorDic objectForKey:@"y"]];
CLLocationDegrees longitude = [CommonFunc textFromBase64String[coorDic objectForKey:@"x"]];

2,两点之间距离的计算

BMKMapPoint point1 = BMKMapPointForCoordinate(CLLocationCoordinate2DMake(45.362,112.369));
BMKMapPoint point2 = BMKMapPointForCoordinate(CLLocationCoordinate2DMake(45.965,112.485));
//注意,解析出来的长度单位为米
CLLocationDistance distance = BMKMetersBetweenMapPoints(point1,point2);

你可能感兴趣的:(关于百度地图api的实用方法记录)