このページは、 Monday, 21-May-2007 21:10:28 JSTに更新されました。
このページは、’後藤 英雄@電気システム工学科 中部大学’が作成しています。
連絡は、後藤@電気システム工学科へお願いします。

 電気工学で使う数学的手法 presented since 1996

点(ベクトル)の回転変換

二次元平面での回転 − 行列表現、三角関数の和積の関係(公式)

 xy平面上の任意の点Rxyxy=(rx,ry))を 原点を中心としてθ回転させた点の座標Ruvuv=(ru,rv))を考える。
点Rxyの原点からの距離をr、線分ORxyのx軸からy軸に向かって測ったx軸とのなす角をαとおけば、
x=rcosα、ry=rsinαで与えられる。

座標に対応する単位ベクトルで表せば、xy座標に対応する単位ベクトルをxyとおいて、
 xy=rxx+ryy
と表される。また、(uvxyは(座標の方向を表す単位ベクトルというだけでなく)座標で表されるという意味で、ベクトルの変換に対してxyと同じに扱ってよいので、)xyと同様にθ回転させたベクトルをとおけば、xyxyと同様の関係があるので、
 uv=rxu+ryv
と表される。図を参考にして、uvxyで表せば、
 u=cosθx+sinθyv=−sinθx+cosθy
であることが分かる。図より、
uv=rxu+ryv
  =rx(cosθx+sinθy)+ry(−sinθx+cosθy
  =rux+rvy
にかかる係数を比較すれば、
u=cosθrx−sinθry=r(cosθcosα−sinθsinα)
v=sinθrx+cosθry=r(cosθsinα+sinθcosα)
変換行列によって、xy座標で表現される(ru,rv)と(rx,ry)の関係は

のように表現される。

 図より、ru=rcos(α+θ)、rv=rsin(α+θ)と表すことが可能である。ゆえに、
u=r(cosθcosα−sinθsinα)=rcos(α+θ)
v=r(cosθsinα+sinθcosα)=rsin(α+θ)
なる関係があることが分かる。次のような三角関数の和積の関係(公式)が導かれる。

cos(α+θ)=cosθcosα−sinθsinα
sin(α+θ)=cosθsinα+sinθcosα

uは、x(=(1,0))をθ回転、vは、y(=(0,1))をθ回転させて得られることから点を表すベクトル表現において、位置を表すベクトルの係数は変えずに、座標に対応するベクトルだけ変換すれば、点の回転が得られることが分かる。 (メリーゴーランドの木馬に乗っている人はメリーゴーランドの回転(座標に対応するベクトルの回転)とともに移動する。木馬との位置関係(座標に対応するベクトルにかかる'位置を表すための係数')は変わらない。)
uの方向にu軸を、vの方向にv軸を設定したことに相当する。(u軸はx軸をθ回転、v軸はy軸をθ回転させて得られる。(xy平面をz軸の周りでθ回転させたのがuv座標)uv座標では、xy座標の場合と同じ成分として点が与えられる。)
すべての点が、原点に対して同じだけ(θだけ)回転されるので、点の集合がある図形を与えていれば、回転後の図形は回転前と合同である。
複数のベクトルを回転させても、ベクトル相互の関係は不変である。(メリーゴーランドに乗って眺めれば、木馬の位置は不変である。)


三次元空間での回転
 xyz空間における原点を通る直線を軸にした回転について考える。 先に考えたxy平面における回転を三次元に拡張すると、xy平面における回転は、z軸の正の方向から原点を眺めたときのxy平面に射影される点の回転に相当する。すなわち、z軸の正の方向から原点を眺めたとき、z軸を回転軸として左回りに回転させる(原点からz軸の正の方向を眺めたとき右回りに回転させる)ことになる。
z軸の周りのθ回転を表す行列
同様にx軸、y軸の周りの回転を考えると、
x軸周りのθ回転を表す行列
y軸周りのθ回転を表す行列

 これらの変換は、回転であるのでベクトル相互の関係は変わらない。一般に、l(=(lx、ly、lz)  (単位ベクトルであるから、lx2+ly2+lz2=1)の軸の周りのθ回転を考える場合には、lをどれかの座標軸に一致させれば、回転を記述することができる。次の手順で回転を表す行列を求める。
@z軸で回転させて、lをyz平面に移動させる。(回転角をγとする)
Ax軸で回転させて、lをz軸と一致させる。(回転角をαとする)
Bz軸(lと一致している)で任意の点R(x,y,z)をθ回転させる。
Cx軸で点Rを−α回転させる。
Dz軸で点Rを−γ回転させる。
z軸の周りで回転させても、z軸とlのなす角は変わらないので、z軸とlのなす角はαである。 また、lのxy平面への射影がy軸とのなす角がγであるから、αとγを用いれば、
x=sinαsinγ
y=sinαcosγ
z=cosα
で与えられる。

@z軸周りの回転なので、 (lx、ly、lz)→(0,(1−lz21/2,lz) へ変換される。

Ax軸周りの回転なので、(0,(1−lz21/2,lz)→(0,0,1) へ変換される。

ここまでの変換によって、lはz軸に一致する。同様の変換を注目する点(ベクトル)にも適用すれば、

点R(x,y,z)は、@、Aの変換によって

まとめれば

で点R'(x',y',z')へ移される。

ここで、行列は、ベクトルlを(0,0,1)へ移す変換の一つ(変換@A)を表す。

この変換で得られた点R'をz軸に関してθ回転させた点R''(x'',y'',z'')は次のように表される。

C、Dの変換も同様に考えて行えば、lを軸としたθ回転後の点R位置点R"(x''',y''',z''')は次のように表される。
変換CDが、変換@Aの逆変換であることを考えると、上の表現は行列の逆行列によって、

とも与えられる。

となっているはずである。

 (x,y,z)→(x''',y''',z''')の変換は次のように表される。

次の行列によって、lの周りのθ回転が記述されることが分かる。

ただし、μ=1−cosθとおいた。x、ly、lzであらわせば


 原点を起点とするl(=(lx、ly、lz)  (単位ベクトルであるから、lx2+ly2+lz2=1)を軸としたθ回転(lの終点から起点を見たとき左回りの回転を正の方向とする)は、回転前の点を、回転後の点を'とすれば、'=で与えられる。もし、で何かの形を与える点の集合が代表されていれば、'の点の集合で与えられる形はの点の集合の与える形と合同となる。(点をlに関して同じだけ回転するのであるからあたりまえ)

 例えば、(1,1,1)軸を中心とした2π/3回転を表す行列は、(lx,ly,lz)=(1/31/2,1/31/2,1/31/2)、θ=2π/3であるから、

であたえられる。実際、この変換を行うとx(=(1,0,0))→y(=(0,1,0))、yz(=(0,0,1))、zxになることが分かる。



これでこの項目は終わり

電気工学で使う数学的手法の入り口ページ

ページの選択

井戸・田橋+後藤 研究室トップページ