坐标系变换

    三维空间中,两个坐标系之间的向量和点如何进行转化为以下的主要内容。主要分为两种,第一种为将坐标系进行旋转,而点不主动进行移动;第二种为将向量或点绕坐标轴旋转某个角度,即坐标系不动,点和向量进行旋转。坐标系和向量可以绕x,y,z三个轴进行旋转,以右手坐标系为标准,坐标轴朝自身视角时以逆时针旋转为正方向。坐标变换形式下 

x'=Rx

其中,x为变换前的向量或点,x'表示变换后得到的向量或点,R表示旋转矩阵。

    旋转形式分为外旋和内旋,外旋表示每次旋转绕固定坐标系的轴进行旋转,而内旋表示每次绕自身坐标系的轴旋转。

    若为外旋,以Z1-X2-Y3顺序旋转(左乘),则旋转矩阵为

R=R_y(\theta )R_x(\psi )R_z(\varphi )

    若为内旋,Z1-X2-Y3旋转(右乘),则顺序相反,旋转矩阵为

R=R_z(\varphi )R_x(\psi )R_y(\theta )

    例如,若坐标系oxyz绕固定坐标系旋转,绕z轴旋转30度,绕y旋转10度,绕x轴旋转5度,变换到坐标系ox'y'z',则旋转矩阵为

R=R_x(5^{\circ} )R_y(10^{\circ} )R_z(30^{\circ} )

1. 坐标系旋转

    1)坐标系绕x轴旋转ψ角度,旋转矩阵为

R_x(\psi )=\begin{bmatrix} 1 & 0 &0 \\ 0 & \cos \psi &\sin \psi \\ 0 &-\sin \psi & \cos \psi \end{bmatrix}

    2)坐标系绕y轴旋转θ角度,旋转矩阵为

R_y(\theta )=\begin{bmatrix}\cos \theta & 0 &-\sin \theta \\ 0 & 1 &0 \\ \sin \theta &0 & \cos \theta \end{bmatrix}

    3)坐标系绕z轴旋转φ角度,旋转矩阵为

R_z(\varphi )=\begin{bmatrix} \cos \varphi & \sin \varphi & 0 \\ - \sin \varphi & \cos \varphi & 0\\ 0& 0& 1 \end{bmatrix}

   坐标系绕轴旋转某个角度会导致向量或点会发生相反的旋转。例如例如[1 0 0]T

R_z(90^{\circ} )\begin{bmatrix} 1\\0 \\ 0 \end{bmatrix}=\begin{bmatrix} \cos 90^{\circ} & \sin 90^{\circ} & 0 \\ - \sin 90^{\circ} & \cos 90^{\circ} & 0\\ 0& 0& 1 \end{bmatrix}\begin{bmatrix} 1\\0 \\ 0 \end{bmatrix}=\begin{bmatrix} 0\\-1 \\ 0 \end{bmatrix}

   原本指向x轴正方向的向量,在坐标系逆时针绕z轴旋转90度后,指向y轴负方向。

2.向量旋转

   若想让向量或点旋转一个角度,则使用以下形式

   1)若向量绕x轴旋转ψ角度,旋转矩阵为

R_x(\psi )=\begin{bmatrix} 1 & 0 &0 \\ 0 & \cos \psi &-\sin \psi \\ 0 &\sin \psi & \cos \psi \end{bmatrix}

   2)若向量绕y轴旋转θ角度,旋转矩阵为

R_y(\theta )=\begin{bmatrix}\cos \theta & 0 &\sin \theta \\ 0 & 1 &0 \\ -\sin \theta &0 & \cos \theta \end{bmatrix}

   3)若向量绕z轴旋转φ角度,旋转矩阵为

R_z(\varphi )=\begin{bmatrix} \cos \varphi & -\sin \varphi & 0 \\ \sin \varphi & \cos \varphi & 0\\ 0& 0& 1 \end{bmatrix}

   例如,[1 0 0]T绕z轴90度

R_z(90^{\circ} )\begin{bmatrix} 1\\0 \\ 0 \end{bmatrix}=\begin{bmatrix} \cos 90^{\circ} & -\sin 90^{\circ} & 0 \\ \sin 90^{\circ} & \cos 90^{\circ} & 0\\ 0& 0& 1 \end{bmatrix}\begin{bmatrix} 1\\0 \\ 0 \end{bmatrix}=\begin{bmatrix} 0\\ 1 \\ 0 \end{bmatrix}

   原本指向x轴正方向的向量,在绕坐标轴逆时针绕z轴旋转90度后,指向y轴正方向。

大家如果发现错误问题请积极告知,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值