Java 计算两个GPS坐标点之间的距离

作者:彼岸花开 | 创建时间: 2023-06-10
两个GPS坐标点之间的距离怎么计算呢?用java代码怎么实现呢?简单分享下, 希望能给大家带来帮助!!...
Java 计算两个GPS坐标点之间的距离

操作方法

1. Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度; 2. a=Lat1 – Lat2 为两点纬度之差  b=Lung1 -Lung2 为两点经度之差; 3. 6378.137为地球半径,单位为千米; 计算出来的结果单位为千米。具体代码实现如下:

private const double EARTH_RADIUS = 6378.137;private static double rad(double d){    return d * Math.PI / 180.0;}public static double GetDistance(double lat1, double lng1, double lat2, double lng2){    double radLat1 = rad(lat1);    double radLat2 = rad(lat2);    double a = radLat1 - radLat2;    double b = rad(lng1) - rad(lng2);    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 * 10000) / 10000;    return s;}

温馨提示

地图应用接口中使用的经纬度单位是NTU,您需要把其它单位的经纬度值转化过来
点击展开全文

更多推荐