+(double)distanceBetweenOrderBy:(double) latitude1 :(double) longitude1 :(double) latitude2 :(double) longitude2{
double PI = 3.141592653589793;
double radlat1 = (PI * latitude1 / 180);
double radlat2 = (PI * latitude2 / 180);
double theta = (longitude1 - longitude2);
double radtheta = (PI * theta / 180);
double dist = sin(radlat1)*sin(radlat2) + cos(radlat1)*cos(radlat2)*cos(radtheta);
if (dist > 1) {
dist = 1;
}
dist = acos(dist);
dist = dist * 180 / PI;
dist = dist * 60 * 1.1515;
// km
dist = dist * 1.609344;
return dist;
}
两点之间的距离
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。