gpt4 book ai didi

java - 如何测量距离并根据 Java 中的两个纬度+经度点创建边界框?

转载 作者:IT老高 更新时间:2023-10-28 11:48:46 25 4
gpt4 key购买 nike

我想找到两个不同点之间的距离。我知道这可以通过大圆距来完成。 http://www.meridianworlddata.com/Distance-calculation.asp

一旦完成,有了一个点和一个距离,我想找到那个距离北方,那个距离东方的点,以便在该点周围创建一个框。

最佳答案

这是 Haversine 的 Java 实现公式。我在一个项目中使用它来计算纬度/经度之间的英里距离。

public static double distFrom(double lat1, double lng1, double lat2, double lng2) {
double earthRadius = 3958.75; // miles (or 6371.0 kilometers)
double dLat = Math.toRadians(lat2-lat1);
double dLng = Math.toRadians(lng2-lng1);
double sindLat = Math.sin(dLat / 2);
double sindLng = Math.sin(dLng / 2);
double a = Math.pow(sindLat, 2) + Math.pow(sindLng, 2)
* Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2));
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
double dist = earthRadius * c;

return dist;
}

关于java - 如何测量距离并根据 Java 中的两个纬度+经度点创建边界框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/120283/

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