获取两点(经纬度表示)间距离
2015-01-23 14:26
232 查看
/// 获取两点(经纬度表示)间的距离 /// </summary> /// <param name="p1Lat">第一点纬度值</param> /// <param name="p1Lng">第一点经度值</param> /// <param name="p2Lat">第二点纬度值</param> /// <param name="p2Lng">第二点经度值</param> /// <returns>返回两点间距离</returns> public double GetDistance(double p1Lat, double p1Lng, double p2Lat, double p2Lng) { double dLat1InRad = p1Lat * (Math.PI / 180); double dLong1InRad = p1Lng * (Math.PI / 180); double dLat2InRad = p2Lat * (Math.PI / 180); double dLong2InRad = p2Lng * (Math.PI / 180); double dLongitude = dLong2InRad - dLong1InRad; double dLatitude = dLat2InRad - dLat1InRad; double a = Math.Pow(Math.Sin(dLatitude / 2), 2) + Math.Cos(dLat1InRad) * Math.Cos(dLat2InRad) * Math.Pow(Math.Sin(dLongitude / 2), 2); double c = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a)); double dDistance = EarthRadiusKm * c; return dDistance; } /// <summary> /// Radius of the Earth /// </summary> public double EarthRadiusKm = 6378.137; // WGS-84
相关文章推荐
- 获取两点(经纬度表示)间距离
- 获取两点(经纬度表示)间距离【转】
- C# 获取两点(经纬度表示)间的距离
- 获取两点(经纬度表示)间距离
- 已知用经纬度表示的两点,求两点之间的直线距离
- 根据经纬度,获取两点间的距离
- 通过百度地图API获取经纬度以及两点间距离
- 用百度地图API获取的经纬度信息计算两点距离(Mysql函数)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 通过百度地图API获取经纬度以及两点间距离
- iOS百度地图根据经纬度获取两点之间的距离
- java使用geocoder,获取经纬度并计算没两点间距离
- php 根据两点经纬度 获取两点间距离
- 已知用经纬度表示的两点,求两点之间的直线距离
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 获取两点 经纬度距离 单位:m
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- php获取两点经纬度之间的距离