Iphone 麦卡托投影
MapKit使用墨卡托投影,如何将纬度转换为Y屏幕坐标? 更新: 谢谢。我用它Iphone 麦卡托投影,iphone,mapkit,Iphone,Mapkit,MapKit使用墨卡托投影,如何将纬度转换为Y屏幕坐标? 更新: 谢谢。我用它 CLLocationCoordinate2D leftTopBoxCoordinate; leftTopBoxCoordinate.longitude=-180+cacheRegion.minX*boxSize; leftTopBoxCoordinate.latitude=85-cacheRegion.minY*boxSize; CGPoint leftTopPoint = [map convertCoordinat
CLLocationCoordinate2D leftTopBoxCoordinate;
leftTopBoxCoordinate.longitude=-180+cacheRegion.minX*boxSize;
leftTopBoxCoordinate.latitude=85-cacheRegion.minY*boxSize;
CGPoint leftTopPoint = [map convertCoordinate:leftTopBoxCoordinate toPointToView:map];
int boxDY=leftTopPoint.y;
int boxDX=leftTopPoint.x;
NSLog(@"\nL:%f,G:%f\nDX:%d,DY:%d\n",topLeft.latitude,topLeft.longitude,boxDX,boxDY);
我需要绘制绑定到地图的网格,cacheRegion.minY-是网格中长方体的最小索引,通过它我计算长方体的纬度和经度,我需要计算leftop长方体和mapview区域之间的距离。
但10度后[map convertCoordinate:leftTopBoxCoordinate toPointToView:map];不工作。
这么好
-[GridOverlay drawRect:]:
L:80.058050,G:-180.000000
DX:0,DY:-56
This bad
-[GridOverlay drawRect:]:
L:79.432371,G:-180.000000
DX:0,DY:28
所有日志:
-[GridOverlay drawRect:]:
L:85.000000,G:-180.000000
DX:0,DY:0
-[GridOverlay drawRect:]:
L:80.058050,G:-180.000000
DX:0,DY:-56
-[GridOverlay drawRect:]:
L:79.432371,G:-180.000000
DX:0,DY:28
发生了什么事?你知道吗?我墨卡托投影以线性方式映射纬度,因此可以从地图视图的“区域”属性计算坐标 但是,MKMapView有一种方法可以将坐标从WGS84映射到屏幕:
convertCoordinate:toPointToView: