一、旋转矩阵
- 在三维空间中,旋转可以通过 4x4 矩阵实现,其中前三列是 3x3 的旋转矩阵,最后一列用于处理齐次坐标(保持平移变换的统一性)。通过这种方式,我们可以实现绕特定轴的旋转变换。
1. 绕 X 轴旋转
绕 X 轴旋转一个角度 θ 的旋转矩阵为:
2. 绕 Y 轴旋转
绕 Y 轴旋转一个角度 θ 的旋转矩阵为:
3. 绕 Z 轴旋转
绕 Z 轴旋转一个角度 θ 的旋转矩阵为:
二、平移矩阵
- 平移矩阵用于将一个点沿 X、Y 和 Z 轴平移特定的距离。它的作用是改变点的位置而不进行旋转。平移矩阵的 4x4 矩阵形式如下:
其中: - tx 是沿 X 轴的平移距离,
- ty 是沿 Y 轴的平移距离,
- tz 是沿 Z 轴的平移距离。
三、旋转与平移的组合
- 旋转和平移可以组合在一起,形成一个复合变换。假设你想先旋转,再平移,可以通过矩阵乘法将旋转矩阵和平移矩阵组合起来
1. 旋转矩阵 R(例如绕 Z 轴旋转):
2. 平移矩阵 T(tx,ty,tz):
3. 组合矩阵 M(先旋转后平移):M=T⋅Rz(θ)
这样,组合矩阵M 将同时执行旋转和平移变换。通过矩阵乘法将其应用于点的变换。
四、平移与旋转的具体示例
1. 平移示例
假设我们有一个点P(x,y,z),并希望将其平移tx, ty, 和tz 个单位。
- 将点转换为齐次坐标形式:
- 应用平移矩阵T(tx,ty,tz):
- 计算平移后的新坐标:
2. 绕 Z 轴旋转示例
假设我们有一个点P(x,y,z),并希望将其绕 Z 轴旋转θ 角度。
- 将点转换为齐次坐标形式:
- 应用绕 Z 轴的旋转矩阵 Rz(θ):
- 计算旋转后的新坐标:
五、总结
- 旋转矩阵用于实现绕 X、Y 或 Z 轴的旋转。旋转矩阵是 4x4 的齐次变换矩阵,其中前三列为旋转变换,第四列通常为 (0,0,0,1) 。
- 平移矩阵用于将点沿各轴平移,矩阵中的最后一列包含平移的距离。
- 旋转与平移组合可以通过矩阵乘法将旋转和平移同时应用于一个点,形成复合变换。