我有在印度运行良好的代码。此代码计算两个位置之间的大致距离。我使用了下面提到的代码。但是如果我在美国运行同样的代码。然后为每个位置更新计算不同的距离。我将源和目的地的纬度和经度传递给了这个函数。该应用程序在印度运行良好。但不适用于美国。在同一个地方它显示不同的计算。在此先感谢。任何帮助将不胜感激。
public static double distanceKm(double lat1, double lon1, double lat2, double lon2) {
double lat1Rad = Math.toRadians(lat1);
double lat2Rad = Math.toRadians(lat2);
double deltaLonRad = Math.toRadians(lon2 - lon1);
return Math.acos(Math.sin(lat1Rad) * Math.sin(lat2Rad) + Math.cos(lat1Rad) * Math.cos(lat2Rad)
* Math.cos(deltaLonRad))
* 6371;
}