(根据评论修订的问题:)
好吧,我会试着用另一种方式来问...我如何获得这个圆形覆盖层的边框坐标:
(原始问题:)
我的 iPhone 应用程序出现了奇怪的问题。我有一个 MKCoordinateRegion,其中心坐标纬度为 51.509980,经度为 -0.133700。我使用了方法 MKCoordinateRegionMakeWithDistance,并将距离设置为 16,093.44 米(10 英里)。
我想要获取该区域的边界点,因此我编写了以下代码:
MKCoordinateRegion region2 = self.myMapView.region;
float minLat = region2.center.latitude - (region2.span.latitudeDelta / 2.0);
float maxLat = region2.center.latitude + (region2.span.latitudeDelta / 2.0);
float minLong = region2.center.longitude - (region2.span.longitudeDelta / 2.0);
float maxLong = region2.center.longitude + (region2.span.longitudeDelta / 2.0);
我找到了一个用于测试的网站http://boulter.com/gps/distance/,它可以计算两个坐标之间的距离。当我输入起始坐标为:51.509980,经度为:-0.133700(伦敦),终止坐标为:
2011-11-26 01:15:42.830 NearMeTest[3911:11603] MinLAT 51.334381 and MaxLAT 51.684814
2011-11-26 01:15:42.830 NearMeTest[3911:11603] MinLONG -0.352936 and MaxLONG 0.086517
我明白那两个坐标之间的距离为15.4英里,而不是预期的10英里。
截图:
为什么会有这样的差异?当我尝试使用不同的中心坐标(东京、纽约)时,结果是正确的10英里。
感谢回复。