iOS 地图 通过经纬度计算两点间距离
- (double)calculateStart:(CLLocationCoordinate2D)start end:(CLLocationCoordinate2D)end { double meter = 0; double startLongitude = start.longitude; double startLatitude = start.latitude; double endLongitude = end.longitude; double endLatitude = end.latitude; double radLatitude1 = startLatitude * M_PI / 180.0; double radLatitude2 = endLatitude * M_PI / 180.0; double a = fabs(radLatitude1 - radLatitude2); double b = fabs(startLongitude * M_PI / 180.0 - endLongitude * M_PI / 180.0); double s = 2 * asin(sqrt(pow(sin(a/2),2) + cos(radLatitude1) * cos(radLatitude2) * pow(sin(b/2),2))); s = s * EARTH_RADIUS; meter = round(s * 10000) / 10000; //返回距离单位是米 return meter; }
//赤道半径
EARTH_RADIUS = 6378137;
//start 起点经纬度,数据格式 start = {lon:,lat:}
//end 终点定位度,数据格式 end = {lon:,lat:}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。