Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 麦卡托投影_Iphone_Mapkit - Fatal编程技术网

Iphone 麦卡托投影

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

MapKit使用墨卡托投影,如何将纬度转换为Y屏幕坐标? 更新: 谢谢。我用它

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: