2012-03-28 5 views
0

ポイント(x、y、z)をポイント(u、v)に変換しようとしています。私はウィキでの式を使用した:3Dポイントを2Dポイント座標系に変換する、またはその逆を変換する

http://en.wikipedia.org/wiki/N-vector#Converting_latitude.2Flongitude_to_n-vector

のように3D

に点(3,2)を形質転換:

x=Math.cos(lat)*Math.cos(lon); 
y=Math.cos(lat)*Math.sin(lon); 
z=Math.sin(lat); 

と3D点から2Dへ:

v=Math.asin(z); 
u=Math.atan2(y,x); 

しかし、問題は、変換されたものと同じ値を与えませんない2Dに3D
に点(3,2)その後、再びが(3,2)

+0

'x = Math.cos(x)* Math.cos(y); y = Math.cos(x)* Math.sin(y); 'これは実際のコードではないと思いますか?それ以外の場合は、座標値に 'x'という角度を設定してから、再び角度のように使用しようとします。 –

+0

私は緯度と経度を緯度として3度、経度として2度の角度として使用しています – user1261494

+0

@ user1261494:コードが壊れていると既に言われています。最初の方程式のlhsとrhsの両方にx(とy)があります。 –

答えて

0

にあなたはラジアンでそれらの入力を期待し使用している三角関数に等しく、あなたが得た緯度と経度は度で測定されます。

+0

私はあなたのメモを使って作業しましたが、正確な結果には至っていませんでした – user1261494

+0

どのような結果が得られましたか? –

関連する問題