两点经纬度,计算距离
1.Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度;
2.a=Lat1 – Lat2 为两点纬度之差 b=Lung1 -Lung2 为两点经度之差;
3.6378.137为地球半径,单位为千米;
计算出来的结果单位为千米。
也有人http://panyee.cnblogs.com/archive/2006/07/04/442771.html)说直接从google maps的脚本里扒了段代码,maps的代码:计算的结果是米为单位。
// 计算两点距离
privatefinaldoubleEARTH_RADIUS = 6378137.0;
privatedouble gps2m(double lat_a, double lng_a, double lat_b, double lng_b) {
double radLat1 = (lat_a * Math.PI / 180.0);
double radLat2 = (lat_b * Math.PI / 180.0);
double a = radLat1 - radLat2;
double b = (lng_a - lng_b) * Math.PI / 180.0;
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;
}
两点经纬度,计算方位角
计算方位角pab,
其中lat_a, lng_a是A的纬度和经度; lat_b, lng_b是B的纬度和经度。代码如下:
// 计算方位角pab。
privatedouble gps2d(double lat_a, double lng_a, double lat_b, double lng_b) {
double d = 0;
lat_a=lat_a*Math.PI/180;
lng_a=lng_a*Math.PI/180;
lat_b=lat_b*Math.PI/180;
lng_b=lng_b*Math.PI/180;
d=Math.sin(lat_a)*Math.sin(lat_b)+Math.cos(lat_a)*Math.cos(lat_b)*Math.cos(lng_b-lng_a);
d=Math.sqrt(1-d*d);
d=Math.cos(lat_b)*Math.sin(lng_b-lng_a)/d;
d=Math.asin(d)*180/Math.PI;
// d = Math.round(d*10000);
return d
}
分享到:
相关推荐
1、已知两点经纬度求距离方位角 2、已知一点经纬度、距离、方位角求另一点经纬度。 java源码。本人手敲,亲测简单实用。可用于百度地图、Google地图开发,误差极小基本可忽略。
用android开发的一个通过经纬度计算距离和方位角的代码
根据经纬度距离和方位角计算新的经纬度,计算经纬度两点间距离
获取经纬度已经封装成工具类,纯原生获取android手机经纬度,并且根据经纬度转换成准确的地址
经纬度计算距离经纬度计算距离工具, 挺不错的。经纬度计算距离经纬度计算距离工具, 挺不错的。
1.main为主程序,输入的信息为A、B两点的经纬度信息,输出为B点相对A点的真北角。 2.输出的距离单位为km。 3.输出的真北角已经归一化至0~360°范围内。
知道我方经纬度和相对于敌方的距离及方位角,计算对方经纬度。
java根据两点的经纬度计算直线距离,以及百度地图、高德地图、谷歌地图不同调用方法
已知两点经纬度,求距离和方位.Qt中利用C和C++共同实现
根据经纬度计算地球上任意两点间的距离,精度高,GUI界面操作简单,小白可直接使用。
一个简单的获取当前位置经纬度的实例. 适合初学者,在Android Studio下编译通过.
获取经纬度已经封装成工具类,纯原生获取android手机经纬度,并且根据经纬度转换成准确的地址
经纬度计算距离
电子-根据两点经纬度计算距离.doc,单片机/嵌入式STM32-F0/F1/F2
android 百度API 获取经纬度 本人android获取经纬度代码
android gps 获取经纬度 代码简单可用,只要一点击按钮,就打印出所在地点的经纬度。
经纬度计算距离工具可以快速的计算两点这间的距离
经纬度计算距离,经纬度计算距离公式,matlab源码
android 调用系统GPS获取经纬度
已知经纬度计算距离的代码