计算高德经纬度坐标点之间的距离
- 需求:在做移动端附近的人的功能时,通过高德定位模块得到对应的经纬度信息,但是需要知道两个点之间的距离
1、代码来源:
在Maven仓库中找到7.9.1的jar包,jar中有AMapUtils的工具类
implementation 'com.amap.api:3dmap:7.9.1'
2、二次封装
public class AMapUtils {
public static double calculateLineDistance(LatLng var0, LatLng var1) {
if (var0 != null && var1 != null) {
return calculateLineDistance(var0.latitude, var0.longitude, var1.latitude, var1.longitude);
} else {
try {
throw new Exception("非法坐标值");
} catch (Exception var27) {
var27.printStackTrace();
return 0.0;
}
}
}
public static double calculateLineDistance(double latitude1,
double longitude1,
double latitude2,
double longitude2) {
try {
double var2 = longitude1;
double var4 = latitude1;
double var6 = longitude2;
double var8 = latitude2;
var2 *= 0.01745329251994329D;
var4 *= 0.01745329251994329D;
var6 *= 0.01745329251994329D;
var8 *= 0.01745329251994329D;
double var10 = Math.sin(var2);
double var12 = Math.sin(var4);
double var14 = Math.cos(var2);