gpt4 book ai didi

android - 如何在android中获得距离公里?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:49 27 4
gpt4 key购买 nike

我对 Google map 还很陌生,我想计算 android 中两地之间的距离。

为此,我获得了两个位置的纬度和滞后位置,为此我编写了以下代码:

private double getDistance(double lat1, double lat2, double lon1, double lon2) {
double dLat = Math.toRadians(lat2 - lat1);
double dLon = Math.toRadians(lon2 - lon1);
double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * Math.sin(dLon / 2) * Math.sin(dLon / 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double temp = 6371 * c;
temp=temp*0.621;
return temp;
}

以上代码无法给出两地之间的准确距离。找到距离的另一种方法是什么,请给我任何建议。

最佳答案

@奇拉格帕特尔

double distance;
Location locationA = new Location(“Point A”);
locationA.setLatitude(latA);
locationA.setLongitude(lngA);

Location locationB = new Location(“Point B”);
locationB.setLatitude(latB);
locationB.setLongitude(lngB);

// distance = locationA.distanceTo(locationB); // in meters
distance = locationA.distanceTo(locationB)/1000; // in km

关于android - 如何在android中获得距离公里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13208501/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com