三维图形几何变换是二维图形几何变换的扩展。在二维空间中绕一个中心点旋转,实际上就是绕原点旋转再平移,那么在三维空间中我们可以采用类似的思路,任意一种旋转可以分解为旋转+平移两步,其中一次空间的旋转可以分解为X、Y、Z三个方向上的旋转。
对X、Y、Z轴旋转变换
旋转的正方向:右手拇指指向转轴正向,其余四指缠绕方向便是θ角正向。
三维变换矩阵的功能分块
有时候我们用规范化齐次坐标(x,y,z,1)表示三维点,变换矩阵用4×4阶矩阵表示,即:
1)左上角的3X3子块实现比例、旋转、对称、错切等基本变换
2)左下角的1X3子块实现平移变换
3)右上角的3X1子块实现透视变换
4)右下角的1X1子块实现全比例变换
绕X轴旋转θ角的旋转矩阵为
绕Y轴旋转θ角的旋转矩阵为
绕Z轴旋转θ角的旋转矩阵为
代码实现
构造一个正六面体
使其绕X轴旋转30度
# -*- coding: utf-8 -*-
import numpy as np
import