将纬度和经度转换为米或公里

use*_*556 2 cocoa-touch objective-c mapkit mkmapview ios

我有两个MapKit注释,显示纬度和经度.

有什么方法可以通过现有的Objective-C iOS API函数来计算两者之间的距离吗?

小智 17

MapKit框架包含了许多功能,你会发现CLLocationDistance MKMetersBetweenMapPoints(MKMapPoint a, MKMapPoint b);它在地图上返回的距离,以米为单位,两点之间.也许你可以用它来解决你的问题.

首先创建两个对应点,并获取距离:

MKMapPoint p1 = MKMapPointForCoordinate(coord1);
MKMapPoint p2 = MKMapPointForCoordinate(coord2);
CLLocationDistance dist = MKMetersBetweenMapPoints(p1, p2);
Run Code Online (Sandbox Code Playgroud)