我想以公里为单位显示两个地方的距离,为此我编写了以下代码:
hyd(17.38,78.48) eluru(16.7,81.1)
private String getDistance(double lat1, double lat2, double lon1, double lon2) {
double Radius = 6371;
double dLat = Math.toRadians(lat2 - lat1);
double dLon = Math.toRadians(lon2 - lon1);
double a = Math.sin(dLat / 5) * Math.sin(dLat / 5)
+ Math.cos(Math.toRadians(lat1))
* Math.cos(Math.toRadians(lat2)) * Math.sin(dLon / 5)
* Math.sin(dLon / 5);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double km = Radius * c;
String kms=Double.toString(km);
return kms;
}
输出 = 2995.8772
正确的 o/p = 330km
我怎样才能得到android中两个地方之间的确切距离提前谢谢.....