根据经纬度计算距离公式
Java 实现
/**
* 获取两个坐标点之间的距离
*
* https://segmentfault.com/a/1190000013922206
* https://www.jianshu.com/p/18efaabab98e
*
* @param p1
* @param p2
* @return
*/
public static double getDistance(LatLonPoint p1, LatLonPoint p2) {
double p1Lat = p1.getLatitude();
double p2Lat = p2.getLatitude();
double a = p1Lat - p2Lat;
double b = p1.getLongitude() - p2.getLongitude();
return 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2), 2) + Math.cos(p1Lat) * Math.cos(p2Lat) * Math.pow(Math.sin(b/2), 2))) * EARTH_RADIUS;
}
参考:
https://segmentfault.com/a/1190000013922206
https://www.jianshu.com/p/18efaabab98e