将MKMapRect.origin转换为经度和纬度
问题描述:
我需要在地图上注释一个可见点(无需用户输入)。我正在使用MKMapView visibleMapRect
来计算我想要的点。然而从我的代码下面,我正在读取的值,如将MKMapRect.origin转换为经度和纬度
let rect = mapView.visibleMapRect
print(rect.origin.x) //211653840.83766
print(rect.origin.y) //133214809.161136
哪些不是经度和纬度。但是我发现MKMapRect和Coordinates之间的转换的任何例子都像它已经在经度和纬度上给出了一样。从visibleMapRect
获得经度和纬度,需要做些什么?还是有一个公式来转换我在经度和纬度上获得的这些值?
有关更多信息可见点的经度和纬度是:
103.861463 //longitude
1.3165999 //latitude
当visibleMapRect是:
211653840.83766 //origin.x
133214809.161136 //origin.y
16865.6084111989 //size.width
26357.4158187151 //size.height
答
let rect = mapView.visibleMapRect
let mapPoint = MKMapPointMake(rect.origin.x, rect.origin.y)
let coordinate = MKCoordinateForMapPoint(mapPoint)
print(coordinate.latitude)
print(coordinate.longitude)
这是......一个简单的解决方案,我完全错过。谢谢 –
@BenOng请标记为答案,如果它解决了您的问题:) – chengsam
哈哈,刚才那段时间我可以接受。 –