Rumah > Java > javaTutorial > teks badan

Bagaimana Mengira Jarak Antara Dua Titik Menggunakan Latitud dan Longitud?

Linda Hamilton
Lepaskan: 2024-10-31 13:09:04
asal
947 orang telah melayarinya

How to Calculate the Distance Between Two Points Using Latitude and Longitude?

Mengira Jarak antara Dua Titik Menggunakan Latitud dan Longitud

Menentukan jarak antara dua titik pada peta adalah tugas biasa dalam pelbagai bidang, daripada navigasi ke GIS. Satu kaedah untuk mengira jarak ini dengan tepat ialah menggunakan formula Haversine, yang direka khusus untuk bekerja dengan koordinat latitud dan longitud.

Implementasi Formula Haversine di Java

A pelaksanaan tepat formula Haversine di Jawa dibentangkan di bawah:

<code class="java">public static double distance(double lat1, double lon1, double lat2, double lon2) {
    final int R = 6371; // Radius of the earth in kilometers
    
    double latDistance = Math.toRadians(lat2 - lat1);
    double lonDistance = Math.toRadians(lon2 - lon1);
    double a = Math.sin(latDistance / 2) * Math.sin(latDistance / 2)
            + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2))
            * Math.sin(lonDistance / 2) * Math.sin(lonDistance / 2);
    double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
    double distance = R * c * 1000; // convert to meters
    
    return distance;
}</code>
Salin selepas log masuk

Penggunaan Formula

Untuk mengira jarak antara dua titik dengan koordinat (lat1, lon1 ) dan (lat2, lon2), hanya lulus nilai ini sebagai parameter kepada kaedah jarak. Hasilnya dikembalikan dalam meter.

Contoh:

<code class="java">double lat1 = 41.881832;
double lon1 = -87.623177;
double lat2 = 41.889809;
double lon2 = -87.621882;

double distance = distance(lat1, lon1, lat2, lon2);
System.out.println("Distance between the points: " + distance + " meters");</code>
Salin selepas log masuk

Pertimbangan untuk Ketepatan

Ketepatan keputusan bergantung pada ketepatan koordinat input. Adalah penting untuk memastikan bahawa nilai latitud dan longitud disediakan dalam format yang betul dan dengan unit yang sesuai (cth., darjah perpuluhan).

Atas ialah kandungan terperinci Bagaimana Mengira Jarak Antara Dua Titik Menggunakan Latitud dan Longitud?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!