ベクトルの回転について
はじめまして。
以下のような問題について大学1年生の弟から質問されたのですが、
答えに自信がありません。どうか皆様のお力をお貸しください。
三次元空間上にベクトルA(ax,ay,az)、B(bx,by,bz)がある。
このAがBと平行になるような計算をしたい。
自分なりの考えは以下の通りです。
1.z座標を無視して、xy平面上のベクトルとして考え、成す角θzを求める
θz=ArcCos{<A,B>/|A||B|}
|A|=√ax^2+ay^2 |B|=√bx^2+by^2
<A,B>=ax×bx+ay×by
2.x座標を無視して、xy平面上のベクトルとして考え、成す角θxを求める
θx=ArcCos{<A,B>/|A||B|}
|A|=√ay^2+az^2 |B|=√by^2+bz^2
<A,B>=ay×by+az×bz
3.y座標を無視して、xy平面上のベクトルとして考え、成す角θyを求める
θy=ArcCos{<A,B>/|A||B|}
|A|=√ax^2+az^2 |B|=√bx^2+bz^2
<A,B>=ax×bx+az×bz
4.z軸回転させる。このとき、z軸回転させた座標をzAx、zAyとする。
zAx=ax Cosθz-ay Sinθz
zAy=ax Sinθz + ay Cosθz
5.次にx軸回転させる。このとき、x軸回転させた座標をxAy、xAzとする。
xAy=zAy Cosθx-az Sinθx
xAz=zAy Sinθx + az Sinθx
6.次にy軸回転させる。このとき、y軸回転させた座標をyAx、yAzとする。
yAz=xAz Cosθy-zAx Sinθy
yAx=xAz Sinθy + zAx Cosθy
7.求まったyAx、zAy、yAzを成分とする、ベクトルはBと平行である。(終了)
うろ覚えですが、軸回転は順番によって全く違った回転をしてしまうというのを昔勉強したような気がするのですが、今回の場合は特にそういった問題は関係ないのでしょうか?
また、それぞれの平面ごとになす角を求め、3つのなす角を使った回転を行ないましたが、
θ=ArcCos{<A,B>/|A||B|}
|A|=√ax^2+ay^2+az^2 |B|=√bx^2+by^2+bz^2
<A,B>=ax×bx+ay×by+az×bz
といった風に、一気に求めたθを用いて回転させる方法はありませんでしょうか?
(AとBの外積で出てくる値が回転軸になるような・・・・?)
宜しくお願いします。