首頁 > web前端 > js教程 > 如何計算 Google 地圖 V3 上兩個標記之間的距離?

如何計算 Google 地圖 V3 上兩個標記之間的距離?

Patricia Arquette
發布: 2024-11-30 05:49:14
原創
352 人瀏覽過

How to Calculate the Distance Between Two Markers on Google Maps V3?

計算Google 地圖V3 中兩個標記之間的距離

確定Google 地圖V3 中標記所表示的兩個點之間的距離是一項常見任務開發商面臨的。本文提供了有效計算此距離的全面解決方案。

要計算距離,您可以利用半正弦公式。該公式準確地考慮了地球的曲率,從而實現可靠的距離計算。

實現涉及以下步驟:

  1. 將緯度和經度轉換為弧度:

    var rad = function(x) {
      return x * Math.PI / 180;
    };
    登入後複製
  2. 計算緯度和經度差異:

    var dLat = rad(p2.lat() - p1.lat());
    var dLong = rad(p2.lng() - p1.lng());
    登入後複製
  3. 應用半正矢公式:

    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);
    
    // Calculate the central angle
    var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
    
    // Calculate the distance in meters
    var d = R * c;
    return d; // Distance in meters
    登入後複製
  4. 用法範例:

    var distance = getDistance(marker1, marker2);
    登入後複製

此方法提供了一種穩健的方法計算Google 地圖 V3 上兩個標記之間的距離,使開發人員能夠準確顯示其地圖上位置之間的距離地圖。

以上是如何計算 Google 地圖 V3 上兩個標記之間的距離?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板