private static final double EARTH_RADIUS = 6378137;
private static double rad(double d) {
return d * Math.PI / 180.0;
}
/**
* 根据两点间经纬度坐标(double值),计算两点间距离,
*
* @param lat1
* @param lng1
* @param lat2
* @param lng2
* @return 距离:单位为米
*/
public static double DistanceOfTwoPoints(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;
}
分享到:
相关推荐
根据提供的文件信息,本文将详细解释如何在Android应用开发中基于两点间的经纬度坐标来计算这两点之间的地理距离。此方法对于实现地图定位、路线规划等功能具有重要意义。 ### 核心概念 #### 地理坐标系统 地球...
Android中由两点间经纬度坐标,计算两点间距离
经过两点之间经纬度计算直线距离,两种方法皆可用
小工具, 根据一点的经纬度, 到另外一点的距离, 方位角, 计算另外一点的经纬度.
在IT领域,尤其是在地理信息系统(GIS)和地图学中,经纬度坐标下的球面多边形面积计算是一项关键技能。这种计算方式对于处理地球表面的大范围数据尤其重要,因为地球并非一个完美的平面,而是一个略扁的球体,即椭...
在实际应用中,如果需要在地图上显示两点间的距离,可以结合高德地图JavaScript API或者Android SDK,将计算出的距离作为参数,绘制路径或标注。但在这个例子中,描述中提到的“通过高德地图测试通过”可能意味着...
3. 批量获取距离和时间:对于物流、配送等业务,可以一次性计算多个坐标点间的距离和时间,提高效率。 三、API使用步骤 1. 注册高德开放平台账号:首先,你需要在高德开放平台注册一个开发者账号,并创建应用,获取...
高德地图 1,根据经纬度计算面积 2,判断一个点是否在圈内
总的来说,这个压缩包提供了在Android中集成Google Maps API,计算并显示两点间路径的完整示例。对于初学者,这是一个很好的学习资源,可以帮助他们快速理解和掌握地图功能的实现。同时,对于有经验的开发者,这个...
- 距离计算:测量两点之间的直线距离或路径距离。 - 区域分析:查找点或线与多边形的相互关系,如包含、相交等。 - 道路网络分析:路线规划、服务区域分析等高级地理分析功能。 4. **数据管理** - 数据加载:...
总的来说,根据经纬度计算距离是Android应用中的常见需求,尤其在导航、地图服务或社交应用中。理解Haversine公式并能将其转化为代码是Android开发者必备的技能之一。通过以上介绍,你应该能够为初学者提供一个清晰...
例如,显示在地图上,计算两点之间的距离,或者进行其他地理位置相关的操作。 6. **优化与注意事项** - 为了提高用户体验,可以考虑使用异步任务(AsyncTask)或者Retrofit等库来处理网络请求,避免阻塞UI线程。 ...
接下来,我们创建一个LatLng对象数组,存储要绘制的多个点的经纬度坐标。然后使用MarkerOptions来设置每个点的样式,如图标、颜色等。最后调用Map的addMarker方法将这些点添加到地图上。 ```java LatLng[] points =...
为了在地图上显示路径,我们需要计算两点间的路线。这通常涉及到地理坐标系统(如WGS84)和经纬度的理解。可以使用Google Maps Directions API来获取两点之间的导航路径。这个API会返回一系列的经纬度坐标点,这些点...
在地球上,两点之间的距离通常用Haversine公式来计算,这是一个基于球面三角学的方法。在编程中,我们通常会将地球视为一个完美的球体(尽管实际上是椭球体),然后利用经纬度来计算两个位置之间的大圆距离。这个...
总之,获取Android设备上的GPS经纬度并计算两点距离是移动应用开发中的基本技能,涉及到LocationManager服务的使用、位置监听器的注册以及地理坐标间的距离计算。通过理解这些知识点,开发者可以创建出能够提供精确...
设定一个中心点(通常是签到地点的经纬度)和一个半径,然后计算用户位置与中心点之间的距离。可以使用Haversine公式进行计算,该公式可以将经纬度转换为实际距离。如果距离小于设定的半径,那么用户就在签到范围内...
android 百度地图获取两个坐标的实际路线距离-附件资源
使用Haversine公式或Vincenty公式可以计算地球上两点之间的距离。速度=距离/时间,其中距离由坐标转换公式得出,时间通常取两次位置更新的时间间隔。 5. **UI设计**: 应用需要一个用户界面展示当前速度。可以...