プロが教える店舗&オフィスのセキュリティ対策術

点(1,2,3)と点(4,5,6)を結ぶ直線を回転軸とし、点(1,2,3)から点(4,5,6)に向かって反時計方向にπ/6回転させる回転行列Aはどのように求めますか。
 
またAのジョルダン標準形はどうなりますか。

A 回答 (7件)

その直線上の点を1つ選ぶ。


まあ、点 (1, 2, 3) が分かりやすいでしょう。
で、点 (1, 2, 3) を平行移動により原点 O に移せば、その直線(つまり回転軸)が原点 O を通るようになる。
これで計算しやすくなったので、あとは実際に計算して, A とそのジョルダン標準形を求めればよい。
頑張ってください。
    • good
    • 0

求められません。


回転軸が原点を通らない回転は
行列には出来ません。
    • good
    • 0
この回答へのお礼

>回転軸が原点を通らない回転は
行列には出来ません。


CGでは行列を使って回転させてます。

お礼日時:2016/05/01 15:52

一番最初の直交座標系をO1xyzとして座標(1,2,3)を点Aとして,座標(4,5,6)を点B


  とする点AからBに向かうベクトルをxとする。するとO1xyzでのxの成分は
  (3,3,3)である。この座標系の原点をベクトルxで点Aに平行移動させた座標系を
  O2x1,y1,z1とした時前の座標系との関係は,x1=x-1,y1=y-2,z1=z-3である。
  新しい座標系でのベクトルxの成分は(3,3,3)であるから新しい座標系での方向余弦
  は(√2/2,√2/2,√2/2)である。この新しい座標系でのベクトルx をz軸,点Aを原点となるように新しい座標系を更に変換するためには,次の回転変換を行う。
 1.z1軸の周りにπ/4回転する。
 2. x1軸の周りにπ/4回転する。
3. y1軸の周りにπ/4回転する。
この為にはオイラー角が全部π/4の回転行列を作用させれば良い。
 オイラー角の回転行列については線形代数やベクトル解析とうの本にあります。
 そちらを参照してください。
 この行列の具体的な形は次のようになる。
 K ̂={-■(√2/4-1/2&√2/4+1/2&-1/2@√2/4-1/2&-√2/4+1/2&1/2@1/2&1/2&√2/2)}
更にこの座標系でz軸(ベクトルx 即ち線分AB)の周りに回転角σだけ回転させるには
次の行列を作用させれば良い。
 R_σ^z={■(cosσ&-sinσ&0@-sinσ&cosσ&0@0&0&1)}
従ってトータルの回転行列は次式となる。
 R_σ^AB={■(cosσ&-sinσ&0@-sinσ&cosσ&0@0&0&1)}{-■(√2/4-1/2&√2/4+1/2&-1/2@√2/4-1/2&-√2/4+1/2&1/2@1/2&1/2&√2/2)}
={■((√2/4-1/2)cosσ+(√2/4+1/2)sinσ&(√2/4+1/2)cosσ-(-√2/4+1/2)sinσ&-1/2 (sinσ+cosσ)@(√2/4-1/2)sin-(√2/4+1/2)cosσ&(-√2/4+1/2)cosσ+(√2/4+1/2)sinσ&-1/2 (sinσ-cosσ)@1/2&1/2&√2/2)}

この時ABの周りに反時計方向にn/6回転するときのσは,2πn/6=πn/3である。
これを上の行列に代入すれば求めるものです。
 上記行列のJordan標準形を求めるには次のようにします。
 上の行列成分をaijとしてdet(A-λI)=0 を計算してλを計算してください。
 これでJordan標準形が求められます。計算がしんどいのでご自分でやってみてください。
行列が見ずらいので画像をご覧ください。
「回転行列の求め方」の回答画像3
    • good
    • 0

わざわざ念押ししなくてもお分かりとは思いますが、点 (1, 2, 3) を適当な4次正方行列 T にて原点に移し、それから回転行列にて回転させます。


そして、その後に T の逆行列にて、最初と逆の平行移動をすることを忘れないでください。
それら3つの行列を正しい順番で掛ければ, A が求められます。
    • good
    • 0

>わざわざ念押ししなくてもお分かりとは思いますが



いや、同次座標を使うならそう言わないと話が通じないでしょう。

>http://www5d.biglobe.ne.jp/~noocyte/Programming/ …

これで原点を通る回転軸の回転行列は簡単に
作れるので、これを同次座標用に4x4に拡張。
これと同次座標用平行移動の行列を組み合わせれば(掛け合わせれば)
よいのですが、

これが質問者の求めていた答えなのか不明ですね。
    • good
    • 0

>CGでは行列を使って回転させてます



CGでは普通同次座標という4元のベクトル
で計算を行います。それを前提に質問されてます?

同次座標なら任意中心任意方向の回転、任意中心の拡大縮小
平行移動に加え、透視変換も行列で行なえるので
CGにはもってこいです。
    • good
    • 0

>4元のベクトル



おっと

「4次元のベクトル」

に訂正。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!