回転

点を回転させる

 3次元の点をX軸、Y軸、Z軸を中心に回転させます。

 ある点の座標を(X1,Y1,Z1)とします。
その点をΘ回転させた後の点の座標を(X2,Y2,Z2)とすると、

X軸を中心に回転

[ X2 Y2 Z2 W ]=
[ X1 Y1 Z1 1 ] 1000
0cosΘsinΘ0
0-sinΘcosΘ0
0001
X2 = X1
Y2 = Y1cosΘ - Z1sinΘ
Z2 = Y1sinΘ + Z2cosΘ

Y軸を中心に回転

[ X2 Y2 Z2 W ]=
[ X1 Y1 Z1 1 ] cosΘ0-sinΘ0
0100
sinΘ0cosΘ0
0001
X2 = X1cosΘ + Z1sinΘ
Y2 = Y1
Z2 = -X1sinΘ + Z1cosΘ

Z軸を中心に回転

[ X2 Y2 Z2 W ]=
[ X1 Y1 Z1 1 ] cosΘsinΘ0
-sinΘcosΘ00
0010
0001
X2 = X1cosΘ - Y1sinΘ
Y2 = X1sinΘ + Y1cosΘ
Z2 = Z1

となります。
 これをアクションスクリプトで表す場合FlashPlayer10以降からは非常に簡単になりました。上記の計算等は一切いりません。

X軸を中心に回転

Y軸を中心に回転

Z軸を中心に回転

となります。