`

java 根据GPS经纬度坐标计算两点的直线距离的算法

    博客分类:
  • j2ee
阅读更多
public class LocationUtils {
    private static double EARTH_RADIUS = 6378.137;

    private static double rad(double d) {
        return d * Math.PI / 180.0;
    }

    /**
     * 通过经纬度获取距离(单位:米)
     * @param lat1
     * @param lng1
     * @param lat2
     * @param lng2
     * @return
     */
    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 * 10000d) / 10000d;
        s = s*1000;
        return s;
    }
}

//提示 只能大概算出距离。

分享到:
评论

相关推荐

    java根据两点经纬度计算距离

    6. 文件处理:在“两点经纬度计算距离-输入地址得到经纬度”这个文件中,可能包含了将地址转换为经纬度的逻辑。这通常涉及调用地图API的地理编码服务,将街道地址解析为对应的经纬度坐标。 总之,从给定的标题和...

    根据经纬度坐标计算实际两点距离

    ### 根据经纬度坐标计算实际两点距离 在地理信息系统(GIS)开发中,经常需要进行经纬度坐标之间的距离计算。此类计算对于导航系统、地图应用等有着重要的应用价值。本篇文章将详细介绍如何通过C/C++语言实现基于...

    Java计算两个经纬度点之间距离算法

    Java计算两个经纬度点之间距离(以米为单位)算法, 纯Java代码, 可供参考。 在具体项目中使用过。

    经纬度计算距离、方位角等java源码

    本篇文章将详细讲解如何利用Java编程语言实现这一功能,主要基于给定的"经纬度计算"标签以及压缩包中的"Caculate.java"源码。 首先,我们了解地球坐标系统。在地理坐标系统中,每个位置由经度和纬度来表示,经度...

    通过两点经纬度,计算他们之间的距离 - JAVA

    在JAVA编程中,计算两点经纬度之间的距离是一个常见的地理计算任务,主要应用于地图应用、导航系统或者地理位置服务等。这个任务通常使用哈弗辛公式(Haversine formula)来实现,该公式基于球面三角学,可以计算...

    Java版_经纬度两点间距离计算(LngLat)

    ### Java版_经纬度两点间距离计算(LngLat) #### 概述 本文将详细介绍一个用Java实现的计算两个地理位置(通过经纬度表示)之间距离的方法。该方法基于Haversine公式,这是一种广泛用于导航领域中的算法,可以精确...

    根据当前坐标(经纬度)计算附近位置-java版本

    根据已知点坐标计算附近位置,代码详细解释了三种计算策略。主要涉及日常需要解决问题,例如类似于滴滴打车实现查找附近车辆业务逻辑和贝壳找房根据指定位置筛选出附近房源,上述两场场景应用可借鉴代码中两种方法...

    GPS坐标转地图坐标java版算法(纠偏)

    gps坐标转地图坐标算法,纠偏算法。GPS坐标就是传说中大地坐标系统(WGS-84),国内的互联网公司,都不会使用GPS坐标,因为这不符合国家政策。所以大家都会使用GCJ-02坐标系,如腾讯搜搜地图、搜狐搜狗地图、阿里云...

    C#两个经纬度方向角计算源码

    这里我们关注的是一个C#实现的DEMO,用于计算两个经纬度坐标之间角度,以正北为0度到359度的范围。这个程序可能被用于导航、地图应用或者任何需要确定两点间相对方位的系统。 首先,我们要理解经纬度坐标系统。地球...

    经纬度坐标下的球面多边形面积计算公式

    在球面上,直线(大圆弧)的性质与平面上的直线有很大不同,导致角度和距离的计算也更加复杂。球面三角形的面积可以通过其内角和超过180度的部分来计算,这个超出的部分被称为球面过量,公式如下: \[ \text{面积} ...

    不同gps坐标系统比较与转换以及经纬度距离计算MATLAB脚本

    这篇MATLAB脚本("GPS_transform")旨在帮助用户实现这一目标,通过提供一个演示如何在不同坐标系之间转换GPS坐标,并计算两个GPS坐标点之间的距离。 首先,我们要讨论的是GPS坐标系统的基本概念。GPS(全球定位...

    三维坐标与经纬度坐标的转换

    例如,可以使用Haversine公式来估算两点之间的大圆距离,或者使用反余弦定律来计算角度。 在实际应用中,这些转换可能对GIS分析、卫星导航、遥感图像处理等领域至关重要。了解和掌握这些转换方法,能帮助我们在...

    经纬度坐标和xy坐标转换程序.rar

    "经纬度坐标和xy坐标转换程序.rar" 提供了一个实用工具,帮助我们处理这两种坐标系统之间的转换。接下来,我们将深入探讨经纬度坐标系统和XY坐标系统的概念,以及它们之间的转换方法。 经纬度坐标系统是地球表面...

    GPS经纬度纠偏算法c++版

    对GSP经纬度数据进行纠偏计算,过滤掉偏移无效的数据。画出规整的轨迹。

    point-clustering.rar Java后端前端进行经纬度点抽稀聚合渲染

    Java后端进行经纬度点抽稀聚合,HTML呈现及前端聚合渲染 index.html 谷歌map后端点聚合 geos.html 后端点聚合并渲染 geo_cluster.html mapbox前端点聚合 jpg/heatJpgTile.html 栅格瓦片jpg渲染底图及数据 multilines...

    Java地图工具类计算地球上两点之间的距离

    在Java编程中,地图工具类通常用于处理与地理坐标系统相关的任务,比如计算地球上两点之间的距离。本篇文章将深入探讨如何使用Java实现这样的工具类,以及涉及到的关键算法和概念。 首先,我们需要理解地理坐标系统...

    google地球多段线上等距取点VBA代码(已知一点经纬度,方位角,距离,求另一点经纬度 简化算法)

    3. **迭代计算等距点**:从起始点出发,利用上面计算出的偏差值,根据预设的距离间隔迭代计算出一系列新的坐标点。具体的计算公式为: \[ \begin{align*} lon_Bx &= lon_Bx + temp_Num1 * temp_lon \\ lat_Bx &=...

    GPS经纬度转换为百度经纬度

    根据提供的代码片段,我们可以详细分析GPS经纬度转换为百度经纬度的过程: 1. **WGS-84到GCJ-02的转换**:这个步骤主要是计算出从WGS-84坐标系到GCJ-02坐标系的偏移量,并将其加到原始坐标上。 - **计算偏移量**...

    基于Paillier同态加密实现的经纬度坐标的转换、加密、以及距离计算(python实现)

    基于Paillier同态加密实现的经纬度坐标的转换、加密、以及距离计算 默认使用国标的经纬度标准(火星坐标) 表示算法:使用坐标系映射,将经纬度转换为xyz空间坐标系 加密算法:预计算坐标平方后加密(预处理减少...

    Excel计算两经纬度之间的距离

    在给出的VBA代码中,我们有两个公共函数:`Cal_Long_Lat` 用于计算距离,`Cal_bearing` 用于计算方位角。 1. `Cal_Long_Lat` 函数: - 输入参数:`long1`, `lat1` 分别代表第一点的经度和纬度,`long2`, `lat2` ...

Global site tag (gtag.js) - Google Analytics