• 締切済み

三次元座標の回転角度

左手系三次元座標A(X,Y,Z)がB(x,y,z)に移動したとき、原点からみたZ軸の回転角度Θの算出は、 Θ=Atan(y/x)-Atan(Y/X) でいいですか。よろしくお願いします。

みんなの回答

  • atushi256
  • ベストアンサー率62% (10/16)
回答No.2

細かいですが、やや問題があると思います。atanは-π/2から+π/2の範囲で定義されていたはずなので。例えば点Aが(1,1,0)の場合と、(-1,-1,0)の場合を考えてみればわかると思いますが、Y/Xはどちらの場合も1となりますが、明らかに2点は異なります。 ですから、この場合、数学的にはatan(X,Y)と書くべきではないでしょうか。 ----------------------------------- 左手系とのことで、DirectXかなにかで3Dプログラミングをされているのかなと推測しましたが、もしそうなのであれば、atan2(X,Y)と言う数学関数を使われてはいかがでしょうか? ----------------------------------- なお、左手系であろうが、右手系であろうが、Z軸周りの回転量を考えた場合まったく同じになるはずです。

K-kawa555
質問者

お礼

回答ありがとうございます。 大変参考になりました。 atan2で計算してみます。 ありがとうございました。

  • info22
  • ベストアンサー率55% (2225/4034)
回答No.1

>左手系三次元座標 普通の三次元座標系は右手系で考えるのが普通ですが、 本当に左手系で良いですか? http://www.arch.oita-u.ac.jp/povjp/povjp/html/pov35ref_coordinate.html >左手系三次元座標A(X,Y,Z)がB(x,y,z)に移動したとき どのように移動したか書いていないので、 >原点からみたZ軸の回転角度Θの算出は、… に対して回答不能です。 変換行列ないし、どういうアフィン変換をしたのかを補足に書いて下さい。 できれば、(x,y,z)に対して(X,Y,Z)がどのようなアフィン変換(拡大縮小、回転、平行移動)をしたのか、具体的な変換(移動)パラメータと移動法を定義して質問して下さい。変換式を書いて変換の式変形プロセイスを補足に書いて頂けば、回答者はどこまで正しいか、どこが間違っているはチェックできます。Θがどういうアフィン変換をした時のパラメータですか?どこの軸または点の回りのどんな回転角度での移動ですか? 回転移動だけですか?

K-kawa555
質問者

補足

回答ありがとうございます。 質問の内容が不明確ですいません。 今、ビデオカメラによる三次元解析(DLT法)で、被写体の時系列三次元座標が得られています。 ここで、被写体の並進量はビデオカメラ専用解析ソフトで解析できるのですが、回転量は解析できず、エクセルなどで行う必要があります。 そこで、今回の質問の回転角度の算出方法があっているかどうか、お聞きした次第です。 勉強不足でアファイン変換とか判りませんが、もしこれだけの情報でわかることありましたらよろしくお願いします。

関連するQ&A