2017-02-16 172 views
-1

我一直在尋找Gmaps Web服務API來測量兩點之間的距離。這已經過去了大約2個月,仍然沒有運氣。 我找到的所有解決方案都是標準的Google地圖距離計算。Google Maps v3 WebService API直線距離

Maps Distance

我想什麼是9.32公里距離,不是10.4公里(見上圖)
感謝。

回答

0

您可以使用這種功能在PHP中:

echo calculateDistance(27.1010, 27.1020, 26.1010, 26.1020, "K"); 

function calculateDistance($lat1, $lon1, $lat2, $lon2, $unit) { 

    $theta = $lon1 - $lon2; 
    $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta)); 
    $dist = acos($dist); 
    $dist = rad2deg($dist); 
    $miles = $dist * 60 * 1.1515; 
    $unit = strtoupper($unit); 

    if ($unit == "K") { 
     return ($miles * 1.609344); 
    } else if ($unit == "N") { 
     return ($miles * 0.8684); 
    } else { 
     return $miles; 
    } 
} 

// Output: 149.15401829861 in KM 
+0

感謝您的答覆。 所以目前谷歌沒有這種服務。 我剛測試過它,結果可用於該項目。 calculateDistance(40.690569,-73.997659,40.665436,-73.892219,「K」) 谷歌地圖:9.37公里 您的功能:9.31公里 – Jeho

+0

我認爲如果你的自定義功能給你完美的結果,那麼沒有必要擊中API,無論它是否存在。 –

+0

是真實的,需要系統很多努力才能獲得API結果... 非常感謝。 – Jeho