public class Distance {
/** 地球半径,以千米(km)为计算单位 */
private final 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 两点间的距离千米数(km)
*/
public static double getDistance(double lng1, double lat1, double lng2,double lat2) {
double radLng1 = rad(lng1);
double radLng2 = rad(lng2);
double a = radLng1 - radLng2;
double b = rad(lat1) - rad(lat2);
double dis = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2)+
Math.cos(radLng1) * Math.cos(radLng2)* Math.pow(Math.sin(b / 2), 2)));
dis = dis * EARTH_RADIUS;
dis = Math.round(dis * 10000) / 10000.0;//除数写成10000.0减小误差
return dis;
}
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("地球周长:"+2*Math.PI*EARTH_RADIUS);
System.out.println("90度:"+getDistance(0,0,90,0));
System.out.println("180度:"+getDistance(0,0,180,0));
}
}
分享到:
相关推荐
根据经纬度算距离 含c#版和vb版 另外根据地址获取经纬度可以利用百度提供的 “Geocoding API”,可以直接百度:“ 百度Geocoding ”,参考地址:...
在"通过经纬度查询两地距离"的压缩包文件中,可能包含了实现这个功能的源代码、测试数据或其他相关资源。你可以结合这些文件来理解并扩展这个功能,例如添加地图显示、多点距离计算、坐标转换等功能,使其更适用于...
根据经纬度计算两地距离小程序
这个“批量根据经纬度计算距离”的项目就是这样一个实例,它涉及到地理坐标系统、经纬度的转换以及地球表面的距离计算。以下是对这个主题的详细说明: 1. **地理坐标系统**:地球被划分为一个网格系统,称为地理...
本篇将详细解释如何根据经纬度计算两地的距离,以及涉及到的相关知识点。 首先,地球不是一个完美的球体,而是略微扁平的椭球体。因此,在计算距离时,我们需要考虑地球的曲率。最常用的模型是WGS84(World ...
本篇文章将详细讲解如何根据经纬度信息计算两个地点之间的距离,并提供相关的编程实现。 首先,我们要了解地球是一个近似的球体,尽管在某些地方它略微扁平,但我们可以用球面几何学的方法来估算距离。在地球表面上...
PHP获取经纬度两点间距离,筛选,排序,多用于APP中用户与用户或用户与商家之间,进行距离筛选,排序
上一个版本有点问题,界面中将经度和纬度搞混了,此版本纠正了这个错误。
- 给定的代码实现了根据两点的经纬度计算两点之间的球面距离。该方法接受五个参数:两点的经度和纬度以及一个枚举类型`GaussSphere`来指定使用的椭球体模型。 - 代码首先将经纬度转换为弧度制,然后计算出两点间...
3. **航空与航海**:在飞行或航海过程中,通过精确计算两地间的距离,可以优化航线选择,提高效率和安全性。 总之,WGS84坐标系下的经纬度距离计算在现代信息技术领域扮演着极其重要的角色,尤其是在GPS定位、地图...
二、计算两地距离 计算地球上两点之间的距离通常使用Haversine公式,它基于球面三角学。Python中可以编写一个函数,接受两个包含经纬度的元组,然后返回它们之间的大圆距离。首先,将经纬度转换为弧度,然后应用...
JavaScript应用实例-高德地图经纬度求实际距离.js
通过两地的经度和纬度来计算两地之间的实际距离,实现是通过谷歌地图的API函数实现。
根据两点经纬度求距离
在IT行业中,尤其是在地理信息系统(GIS)和导航系统开发中,计算两点间的距离以及它们之间的相对方位角是非常重要的。这个任务通常使用数学公式和特定的编程语言来实现,例如MATLAB。在这里,我们将深入探讨如何...
flutter + SpringBoot + MySql 实现高德地图定位获取位置信息插入数据库并计算出经纬度之间的距离
在IT领域,尤其是在地理信息系统(GIS)和导航应用中,经纬度距离计算是一个常见的需求。Qt是一个跨平台的C++应用程序开发框架,它提供了一套丰富的工具和库,可以用于构建用户界面和处理各种任务,包括地理位置数据...
2. **计算两地距离**: 要计算两个经纬度点之间的距离,我们可以使用球面距离公式,比如在地球表面上的Haversine公式。Python中有一款名为`geopy`的库,可以方便地计算地球上两点间的距离。如果未安装此库,可以...
已知A,B点的经度、纬度、高度,计算A相对于B的北向方位及距离,或者计算B相对于A的北向方位及距离。如果有高度,利用距离和高度再算出俯仰角
比如,一个导航系统可能需要实时计算出发点和目的地之间的方向和距离,而一个地图服务则可能需要使用这些算法来提供精确的两地间距离查询。 在地理信息系统中,理解这些算法的重要性不言而喻,它们是构建准确的数字...