我一直在試圖解決這個問題,現在過去24小時...計算從經度,緯度,速度座標和航向
這裏是假設:
當前經度(十進制格式):53.3205556
當前緯度(以十進制格式):1400公里
012:-1.7297223距離在公里數
標題以度爲:45°
我想來計算小數的新座標後1400公里。這是我的代碼(在PHP中)。
function calc_position($latitude, $longitude, $distance, $heading){
$r = 6378;
// Earth circonference
// Convert heading in degres to radians
$bearing = deg2rad($heading);
// Compute new latitude and longitude
$latitude2 = asin((sin($latitude) * cos($distance/$r)) + (cos($latitude) * sin($distance/$r) * cos($bearing)));
$longitude2 = $longitude + atan2(sin($bearing)*sin($distance/$r)*cos($latitude), cos($distance/$r)-(sin($latitude)*sin($latitude2)));
return (object) array(
'latitude' => $latitude2,
'longitude' => $longitude2
);
}
不幸的是,新的經度和緯度的結果是錯誤的(不一致顯示在地圖上)。我已經徹底地遵循a tutorial HERE來嘗試這個公式,但我不能在這個網站上看到解決方案。
你應該稍微解釋一下45°定義在哪個軸/平面上。 – phil13131
完成!我不確定這是決定性的信息思想。 –
你應該糾正你的解釋。如果您處於給定座標並以東經45°行駛,那麼角度將用赤道線或約線定義。朝向磁南(位於北部)。 – phil13131