码迷,mamicode.com
首页 > 其他好文 > 详细

计算两个经纬地之间的距离

时间:2018-11-01 16:54:58      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:art   sqrt   经纬   double   asi   mat   radius   ng2   ble   

 

/**
* 计算两个经纬度之间的距离 (lon1,lat1),(lon2,lat2)
* @param lan1
* @param lat1
* @param lan2
* @param lat2
* @return
*/
public static double GetDistance(double lng1, double lat1, double lng2, double lat2)
{
double EARTH_RADIUS = 6371.393;
double radLat1 = (lat1*Math.PI / 180.0);
double radLat2 = (lat2*Math.PI / 180.0);
double a = radLat1 - radLat2;
double b = (lng1*Math.PI / 180.0) - (lng2*Math.PI / 180.0);
double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) +
Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));
s = s * EARTH_RADIUS;
s = Math.round(s * 1000);
return s;
}

 

计算两个经纬地之间的距离

标签:art   sqrt   经纬   double   asi   mat   radius   ng2   ble   

原文地址:https://www.cnblogs.com/seeYagain/p/9889941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!