0
我環顧四周,並提及了haversine公式以確定兩個座標(lat1,lng1)和(lat2,lng2)之間的距離。兩個座標之間的距離在php使用haversine
我實現了這個代碼:
function haversineGreatCircleDistance(
$latitudeFrom, $longitudeFrom, $latitudeTo, $longitudeTo, $earthRadius = 6371000)
{
// convert from degrees to radians
$latFrom = deg2rad($latitudeFrom);
$lonFrom = deg2rad($longitudeFrom);
$latTo = deg2rad($latitudeTo);
$lonTo = deg2rad($longitudeTo);
$latDelta = $latTo - $latFrom;
$lonDelta = $lonTo - $lonFrom;
$angle = 2 * asin(sqrt(pow(sin($latDelta/2), 2) +
cos($latFrom) * cos($latTo) * pow(sin($lonDelta/2), 2)));
return $angle * $earthRadius;
}
,我試圖確定:
1)什麼單位,這是迴歸? (進球以英尺爲單位)
2)這個方程寫的是正確的嗎?
例如,這兩點之間應該有什麼距離?
(32.8940695525,-96.7926336453)和(33.0642604502,-96.8064332754)?
我從上面的公式獲得18968.0903312。
謝謝!
因此,因爲我將地球的半徑設置爲$ earthRadius = 6371000,單位是米? – NCoder 2013-02-28 16:45:14
http://www.wolframalpha.com/input/?i=Radius+of+the+Earth+in+meters – 2013-02-28 16:49:28