求三维坐标系的旋转矩阵通常需要求分别沿3个坐标轴的二维坐标系下的旋转矩阵,二维坐标系下的旋转矩阵的推导过程通常以某一点逆时针旋转 θ \theta θ角度进行推理。以下将通过此例来详细讲解二维坐标系下的旋转矩阵推导过程,并进一步给出其他方式的旋转矩阵。
一、二维坐标中点的旋转变换
点的旋转矩阵(逆时针旋转)
已知点 P ( x , y ) P(x, y) P(x,y),将该点以逆时针方向旋转 θ \theta θ角度后得到点 P ′ ( x ′ , y ′ ) P^{\prime}(x^{\prime}, y^{\prime}) P′(x′,y′),如下图所示。求由点 P P P到点 P ′ P^{\prime} P′的旋转矩阵。
-
设半径为 r r r,由图可以分别得到以下三角公式:
- 对于点 P ( x , y ) P(x, y) P(x,y)
x = r cos α y = r sin α (1) \begin{aligned} & x=r \cos \alpha \\ & y=r \sin \alpha \end{aligned} \tag{1} x=rcosαy=rsinα(1) - 对于点 P ′ ( x ′ , y ′ ) P^{\prime}(x^{\prime}, y^{\prime}) P′(x′,y′)
x ′ = r cos ( α + θ ) y ′ = r sin ( α + θ ) (2) \begin{aligned} & x^{\prime}=r \cos (\alpha+\theta) \\ & y^{\prime}=r \sin (\alpha+\theta) \end{aligned} \tag{2} x′=rcos(α+θ)y′=rsin(α+θ)(2)
- 对于点 P ( x , y ) P(x, y) P(x,y)
-
根据两角和的正弦与余弦公式:
sin ( α + θ ) = sin α cos θ + cos α sin θ cos ( α + θ ) = cos α cos θ − sin α sin θ (3) \begin{aligned} & \sin (\alpha+\theta)=\sin \alpha \cos \theta+\cos \alpha \sin \theta \\ & \cos (\alpha+\theta)=\cos \alpha \cos \theta-\sin \alpha \sin \theta \end{aligned} \tag{3} sin(α+θ)=sinαcosθ+cosαsinθcos(α+θ)=cosαcosθ−sinαsinθ(3) -
将公式(3)代入公式(2),可得到: