


Bagaimana untuk Mengira Jarak Bulatan Besar dan Menghasilkan Kotak Sempadan dari Titik Latitud dan Longitud di Jawa?
Nov 01, 2024 am 01:00 AMMengira Jarak dan Menjana Kotak Sempadan daripada Titik Longitud Latitud di Jawa
Mengukur jarak antara koordinat latitud dan longitud, dikenali sebagai jarak bulatan besar, adalah penting untuk aplikasi geospatial. Selain itu, mencipta kotak sempadan di sekeliling titik menggunakan jarak membolehkan visualisasi dan analisis.
Pengiraan Jarak Bulatan Hebat
Formula Haversine, kaedah yang digunakan secara meluas untuk mengira jarak bulatan yang besar, boleh dilaksanakan dalam Java seperti berikut:
<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>
Menjana Bounding Kotak
Setelah jarak dikira, menentukan titik yang mewakili kotak sempadan memerlukan:
-
Mengira Titik Utara:
- Tambahkan jarak yang disediakan pada latitud asal titik.
- Kekalkan longitud yang sama.
-
Mengira Titik Timur:
- Kekalkan yang sama latitud sebagai titik asal.
- Tambah jarak yang disediakan pada longitud asal titik.
Dengan menggabungkan titik asal dengan titik utara dan timur, kotak sempadan boleh dijana.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Jarak Bulatan Besar dan Menghasilkan Kotak Sempadan dari Titik Latitud dan Longitud di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru

Iceberg: Masa Depan Jadual Data Tasik

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap

Cara berkongsi data antara langkah -langkah dalam timun
