旋转的一种计算方式
给定过空间中一点BBB的方向为nnn的旋转轴,对于空间中一点PPP,旋转角度θ\thetaθ求目标向量P′P'P′。
(1)求PPP在旋转轴上的垂足CCC:
C=B+[(P−B)⋅n]n
C = B+[(P-B) \cdot n]n
C=B+[(P−B)⋅n]n
(2)求出垂直于旋转轴的平面内的两个坐标基u,vu,vu,v:
u=P−Cv=n×v
u = P-C \\
v =n\times v
u=P−Cv=n×v
(3)求出平面内的向量rrr:
r=ucosθ+vsinθ
r = ucos\theta + vsin\theta
r=ucosθ+vsinθ
(4)旋转后的点P′P'P′的坐标为:
P′=C+r
P'= C + r
P′=C+r