2017-07-18 4 views
0

したがって、私は経度xと経度yの座標(A)を持っています。私が望むのは、座標と方向(0〜360)の間の距離(メートル)がユーザーの入力に基づいて新しい座標(B)を作成することです。それを達成するための式は何ですか?距離と方向に基づいて座標を作成する

は、これまでのところ、私は何をすべきかanswer1answer2

new_latitude = latitude + (dy/r_earth) * (180/pi); 
new_longitude = longitude + (dx/r_earth) * (180/pi)/cos(latitude * pi/180); 

からこの数式を使用しているが、それはただ一つの方向で新しい座標を作成し、私がしたいことの方向を変更することができます。

答えて

1

あなたはthis excellent siteから式(セクション宛先ポイント所定の距離と、始点から軸受)φは緯度である

var φ2 = Math.asin(Math.sin(φ1)*Math.cos(d/R) + 
        Math.cos(φ1)*Math.sin(d/R)*Math.cos(brng)); 
var λ2 = λ1 + Math.atan2(Math.sin(brng)*Math.sin(d/R)*Math.cos(φ1), 
         Math.cos(d/R)-Math.sin(φ1)*Math.sin(φ2)); 

を使用することができ、λは、θは、ベアリング(北から時計回り)は、経度、δであるです角距離d/R; dは移動距離、Rは地球の半径

関連する問題