+(double)distanceBetweenOrderBy:(double)lat1 :(double)lat2 :(double)lng1 :(double)lng2{
double dd = M_PI/180;
double x1=lat1*dd,x2=lat2*dd;
double y1=lng1*dd,y2=lng2*dd;
double R = 6371004;
double distance = (2*R*asin(sqrt(2-2*cos(x1)*cos(x2)*cos(y1-y2) - 2*sin(x1)*sin(x 2))/2));
//km 返回
//return distance*1000;
//返回 m
return distance;
}
本文介绍了一种使用经纬度计算地球表面两点间距离的方法。通过将经纬度转换为弧度,并运用球面三角公式,可以计算出任意两点之间的精确距离。
806

被折叠的 条评论
为什么被折叠?



