おいら

\(P軸周りで角度\thetaの回転をRp(\theta)とする\)
\(3軸をe_x,e_y,e_zとする\)
\(Rp(\theta)\cdot e_x=\)
ううむ、

P軸周りth度回転をR[P,th]とする
3軸をex,ey,ezとする
Euler角 (a,b,c)というのは、
x軸周りでa度回転し、
(x軸周りa度回転したy軸)周りでb度回転し、
{(x軸周りa度回転したy軸)周りでb度回転したz軸}周りでc度回転
したものである。

x軸周りでa度回転 = R[ex,a]
(x軸周りa度回転したy軸)周りでb度回転 = R[R[ex,a]*ey,b]
{(x軸周りa度回転したy軸)周りでb度回転したz軸}周りでc度回転 = R[R[R[ex,a]*ey,b]*ez,c]
であって、
最終的な回転は、R[R[R[ex,a]*ey,b]*ez,c]*R[R[ex,a]*ey,b]*R[ex,a] と表される

P軸周りth度回転をR[P,th]は、
ます、ある回転をして、動いた先のP軸でth度回転して、最初の回転を戻す、としても同じなので、
ある回転をRps、その逆行列をRspとすると、
R[P,th]=Rsp*R[Rps*P,th]*Rps と書ける

すると、
Rps=R[ex,-a]とおけば、Rsp=R[ex,a]であって、
R[R[ex,a]*ey,b] = R[ex,a]*R[R[ex,-a]*R[ex,a]*ey,b]*R[ex,-a] = R[ex,a]*R[ey,b]*R[ex,-a]

R[R[R[ex,a]*ey,b]*ez,c]=R[R[ex,a]*R[ey,b]*R[ex,-a]*ez,c]=
R[ex,a]*R[R[ex,-a]*R[ex,a]*R[ey,b]*R[ex,-a]*ez,c]*R[ex,-a]=
R[ex,a]*R[R[ey,b]*R[ex,-a]*ez,c]*R[ex,-a]
となる。

更に、Rps=R[ey,-b]とおけば、Rsp=R[ey,b]であって、
R[R[ey,b]*R[ex,-a]*ez,c] = R[ey,b]*R[R[ey,-b]*R[ey,b]*R[ex,-a]*ez,c]*R[ey,-b] = R[ey,b]*R[R[ex,-a]*ez,c]*R[ey,-b]
再びRps=R[ex,-a]とおけば、
R[R[ey,b]*R[ex,-a]*ez,c] = R[ey,b]*R[R[ex,-a]*ez,c]*R[ey,-b] = R[ey,b]*R[ex,a]*R[ez,c]*R[ex,-a]*R[ey,-b]
したがって、
R[R[R[ex,a]*ey,b]*ez,c] =
R[ex,a]*R[R[ey,b]*R[ex,-a]*ez,c]*R[ex,-a]=