目的:根据经纬度计算GPS点的距离,单位为米。
Longitude为纬度值,Latitude为经度值,R为地球半径。
double R=6378137;
double LO2=Longitude* Math.PI / 180.0;
double LA2=Latitude* Math.PI / 180.0;
double b=LO1-LO2;
double a=LA1-LA2;
double sa2, sb2;
sa2 = Math.sin(a / 2.0);
sb2 = Math.sin(b / 2.0);
double d = 2 * R
* Math.asin(Math.sqrt(sa2 * sa2 + Math.cos(LA1)
* Math.cos(LA2) * sb2 * sb2));
计算结果如下:(Distance为距离)
注:由于数据存储在数据库中,所以完整程序的代码放在上篇博文(Java程序实现将数组元素存储到mysql数据库表中)中。