Java での緯度経度点からの距離の計算と境界ボックスの生成
大圏距離として知られる緯度と経度の座標間の距離の測定、地理空間アプリケーションには不可欠です。さらに、距離を使用して点の周囲に境界ボックスを作成すると、視覚化と分析が可能になります。
大圏距離の計算
ハバーサインの公式は、大圏の距離を計算するために広く使用されている方法です。 Java では次のように実装できます:
<code class="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; }</code>
境界ボックスの生成
距離が計算されたら、境界ボックスを表す点を決定する必要があります。
北点の計算:
東点の計算:
元の点と北および東の点を組み合わせることで、境界ボックスを生成できます。
以上がJavaで大圏距離を計算し、緯度と経度の点から境界ボックスを生成する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。