質問: 3次元空間上にあるベクトル(A,B,C)を任意の2点(X1,Y1,X1)、(X2,Y2,Z2)を通る直線 を軸にθラジアン回転させた場合の写像を求めるにはどのようにすればよいでしょうか? よろしくお願いいたします。
回答: 単位方向ベクトルが(a,b,c)で原点を通る直線を軸にしてθだけ回転する回転行列 R(a,b,c;θ) は R(a,b,c;θ) = [a^2(1-cosθ)+cosθ, ab(1-cosθ)-csinθ, ca(1-cosθ)+bsinθ ] [ab(1-cosθ)+csinθ, b^2(1-cosθ)+cosθ, bc(1-cosθ)-asinθ ] [ca(1-cosθ)-bsinθ, bc(1-cosθ)+asinθ, c^2(1-cosθ)+cosθ ] ですので、直線の単位方向ベクトル (a,b,c) に (a,b,c) = ( (X2-X2)/√{(X2-X1)^2+(Y2-Y1)^2+(Z2-Z1)^2}, (Y2-Y2)/√{(X2-X1)^2+(Y2-Y1)^2+(Z2-Z1)^2}, (Z2-Z2)/√{(X2-X1)^2+(Y2-Y1)^2+(Z2-Z1)^2} ) を代入して、[A',B',C'] = R(a,b,c;θ)[A,B,C] で求めればよいと思います。