Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengira Jarak Antara Dua Titik Menggunakan Peta Google V3?

Bagaimana untuk Mengira Jarak Antara Dua Titik Menggunakan Peta Google V3?

Susan Sarandon
Susan Sarandonasal
2024-11-29 09:09:13991semak imbas

How to Calculate the Distance Between Two Points Using Google Maps V3?

Menentukan Jarak antara Dua Titik menggunakan Peta Google V3

Mengira jarak antara penanda dalam Peta Google V3 boleh dicapai dengan memanfaatkan formula Haversine .

Haversine Formula:

Untuk melaksanakan formula ini, langkah berikut boleh diambil:

var rad = function(x) {
  return x * Math.PI / 180;
};

var getDistance = function(p1, p2) {
  var R = 6378137; // Earth’s mean radius in meter
  var dLat = rad(p2.lat() - p1.lat());
  var dLong = rad(p2.lng() - p1.lng());
  var a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
    Math.cos(rad(p1.lat())) * Math.cos(rad(p2.lat())) *
    Math.sin(dLong / 2) * Math.sin(dLong / 2);
  var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
  var d = R * c;
  return d; // returns the distance in meter
};

Dalam kod ini:

  • rad() menukarkan nilai daripada darjah kepada radian.
  • getDistance() mengira jarak antara dua titik p1 dan p2 menggunakan Haversine formula.
  • R ialah purata jejari Bumi.
  • dLat dan dLong ialah perbezaan latitud dan longitud antara dua titik.
  • a ialah nilai perantaraan.
  • c ialah nilai perantaraan.
  • d ialah jarak dalam meter.

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

Kenyataan:
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