IOS 手绘地图导航

手绘地图导航

第三方库

NAMapKit,git

1)支持在手绘图上标记、缩放github

2)支持在单张图片app

3)支持瓦片小图片spa

 

思路

前提:美工已经切好手绘图,并告知咱们当前的缩放级别。code

1)肯定好手绘图左上角点在百度地图上的经纬度坐标。blog

2)将百度地图经纬度坐标转换成平面坐标图片

/**
  *将经纬度坐标转换为投影后的直角地理坐标
  *@param coordinate 待转换的经纬度坐标
  *@return 转换后的直角地理坐标
  */
UIKIT_EXTERN BMKMapPoint BMKMapPointForCoordinate(CLLocationCoordinate2D coordinate);

3)把要标记在手绘图上的点的百度坐标获取到ci

4)把上述经纬度坐标转换成平面坐标并减去左上角的平面坐标的差值,即为上述经纬度所对应的手绘图坐标。get

5)在手绘图上添加标记:string

标记
NAPinAnnotation *melbourne = [NAPinAnnotation annotationWithPoint:[self locationCoordToCgPoint:CLLocationCoordinate2DMake(30.549436, 114.311086)]];
melbourne.title = @ "鹅池" ;
melbourne.subtitle = @ "I have a subtitle" ;
melbourne.color = NAPinColorRed;
[mapView addAnnotation:melbourne animated:NO];
 
- (CGPoint)locationCoordToCgPoint:(CLLocationCoordinate2D)coor
{
     BMKMapPoint point = BMKMapPointForCoordinate(coor);
     // rate根据具体状况获得。
     // leftTopCoor为手绘图左上角点的百度地图平面坐标。
     return  CGPointMake((point.x - leftTopCoor.x) * rate, (point.y - leftTopCoor.y) * rate);
}

6)若是不须要显示当前位置信息,则能够拿到手绘图后直接在图片上测量出平面坐标而后标记。

相关文章
相关标签/搜索