有没有人知道ObjectiveC MapKit中MKMapPointForCoordinate函数的算法

时间:2015-11-25 17:03:49

标签: objective-c mapkit

MapKit具有MKMapPointForCoordinate函数,它接受lat lng作为参数并返回点x,y。

https://developer.apple.com/library/prerelease/ios/documentation/MapKit/Reference/MapKitFunctionsReference/index.html

lat = 59.90738808515509 lng = 10.724523067474365

如果我们传递上面的lat,则lng然后函数返回

x = 142214284,y = 78089986

我用滞后lng wot UTM检查但它给出了不同的结果 http://www.latlong.net/lat-long-utm.html

1 个答案:

答案 0 :(得分:1)

MKMapPointForCoordinate不会返回UTM坐标。 坐标指的是地球上的位置(伪球),但有时您需要进行计算,参考2D地图(更简单),然后再转换为坐标。这是转换的目标。 因此,MKMapPoint返回的MKMapPointForCoordinate结构是坐标的2D表示,但它与任何已知标准都不匹配。

点击此链接:https://developer.apple.com/library/prerelease/ios/documentation/MapKit/Reference/MapKitDataTypesReference/index.html#//apple_ref/doc/c_ref/MKMapPoint

MKMapPoint文档中,您可以阅读:

  

地图点的实际单位与使用的基础单位相关联   绘制MKMapView的内容,但你永远不需要   直接担心这些单位。您主要使用地图点   简化使用坐标复杂的计算   曲面上的值。

修改

我在前一个项目中使用this Open Source Code

进行坐标-UTM转换