public class DistanceUtil {
private static final double EARTH_RADIUS = 6378.137;
private static final 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 value1 = -0.00001d;
double value2 = 0.00001d;
if(lat1 > value1 && lat1 < value2) {
return 0;
}
if(lng1 > value1 && lng1 < value2) {
return 0;
}
if(lat2 > value1 && lat2 < value2) {
return 0;
}
if(lng2 > value1 && lng2 < value2) {
return 0;
}
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;
return s;
}
}
return d * Math.PI / 180.0;
}
/*返回值单位米*/
public static double GetDistance(double lat1, double lng1, double lat2, double lng2) {
double value1 = -0.00001d;
double value2 = 0.00001d;
if(lat1 > value1 && lat1 < value2) {
return 0;
}
if(lng1 > value1 && lng1 < value2) {
return 0;
}
if(lat2 > value1 && lat2 < value2) {
return 0;
}
if(lng2 > value1 && lng2 < value2) {
return 0;
}
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;
return s;
}
}
相关推荐
球面距离计算方式! (1)杭州到各城市的球面距离 1、数据来源:自主计算 2、时间跨度:至今 3、区域范围:368个城市 4、指标说明: 利用城市经纬度,计算球面距离 (2)计算两个点之间的球面距离 1、 数据来源:...
在现代技术中,像Google Earth这样的应用程序提供了精确的地理位置信息,使得我们可以轻松获取到两点的经纬度坐标,进而利用上述公式进行距离计算。这对于规划旅行路线、科学研究、物流配送等众多领域都有着重要的...
根据两点间的经纬坐标计算两点距离,本人测试过,绝对没问题,请放心使用。
6. **应用范围**:除了基本的两点距离计算,这样的工具还可以扩展到多点路径规划、地理围栏设定、交通路线分析等多种场景。 7. **数据输入**:用户输入的经纬度通常采用十进制度数形式,例如(31.2304, 121.4737),...
Android中由两点间经纬度坐标,计算两点间距离
### 百度地图计算两点间距离 #### 概述 在地理信息系统(GIS)和位置服务应用中,计算两点间的...通过以上代码示例可以看出,该工具类能够很好地处理不同距离范围内的两点间距离计算问题,为开发者提供了极大的便利。
c++计算两点之间距离. 计算两点之间距离.
已知两点经纬度,自动计算距离。在表格分别输入两点的经度、纬度,即可计算出这两个点之间的距离长度。已知两点经纬度,自动计算距离。在表格分别输入两点的经度、纬度,即可计算出这两个点之间的距离长度。
"电子-根据两点经纬度计算距离.doc" 根据两点经纬度计算距离是基于地球坐标系的概念。地球坐标系是由经度和纬度组成的。经度是指从本初子午线到某点的水平角距离,纬度是指某点与地球赤道面的夹角。 在地球坐标系...
在Java编程中,根据两点的经纬度来计算距离是一项常见的任务,特别是在地理信息系统(GIS)或者定位服务相关的应用中。这个任务通常涉及到地球表面的距离计算,因为经纬度是地球坐标系统的一部分。以下是一些相关的...
这个距离可以通过应用勾股定理来计算,即两点之间距离的平方等于它们在x轴和y轴方向上坐标的差的平方之和的平方根。 首先,我们采用面向对象的思想来设计这个程序。面向对象编程(Object-Oriented Programming, OOP...
首先,我们要理解两点之间的距离计算公式,这是基于欧几里得几何中的距离定义。给定两个二维平面上的点P1(x1, y1)和P2(x2, y2),它们之间的距离D可以通过以下公式计算: \[ D = \sqrt{(x2 - x1)^2 + (y2 - y1)^2} \...
java利用两点经纬度计算两点之间的距离java利用两点经纬度计算两点之间的距离java利用两点经纬度计算两点之间的距离java利用两点经纬度计算两点之间的距离java利用两点经纬度计算两点之间的距离
sqlserver根据经纬度计算两点间距离sqlserver根据经纬度计算两点间距离sqlserver根据经纬度计算两点间距离sqlserver根据经纬度计算两点间距离
6. 在UG/NX中测试:启动UG/NX,调用新注册的UFUNC,验证两点距离计算功能是否正常工作。 UFUNC的二次开发不仅限于简单的几何计算,还可以涉及复杂的建模操作、数据处理、分析等。通过深入学习UG/NX的API文档,...
根据经纬度计算两点之间的距离,传输过来坐标点,直接计算两点之间的距离
在地理信息系统(GIS)领域,计算两点间的精确距离是一项基础而重要的操作。特别是在地震分析中,需要根据震中与观测点的经纬度来精确计算出地震波的传播距离。本文详细介绍了计算地球上两点间距离的几种方法,其中...
这个名为“用经纬度计算两点距离软件”的程序显然就是针对这一需求设计的。经纬度是一种坐标系统,用于精确地定位地球上任何位置。下面将详细解释如何使用经纬度以及计算两点距离的数学原理。 首先,我们来理解一下...
### 根据经纬度坐标计算实际两点距离 在地理信息系统(GIS)开发中,经常需要进行经纬度坐标之间的距离计算。此类计算对于导航系统、地图应用等有着重要的应用价值。本篇文章将详细介绍如何通过C/C++语言实现基于...
通常,这种距离计算基于球面三角学原理,利用地球的平均半径来近似计算两点间的大圆弧长度。 #### 三、计算公式详解 在给定的部分内容中,提供了一个计算两点间距离的函数`geodist`。下面对该函数进行详细解析: ...