线性变换
常见的线性变换平移、缩放、旋转、投影
三维空间的坐标表示
通常用4x4矩阵表示3D空间中的变换,如平移、旋转、缩放等。
- 旋转变换:矩阵的前三列表示三个坐标轴的旋转变换,每列都是一个长度为3的向量。例如,第一列表示绕X轴旋转的变换,第二列表示绕Y轴旋转的变换,第三列表示绕Z轴旋转的变换。
- 平移变换:矩阵的第四列表示平移变换,它是一个长度为3的向量,表示在每个坐标轴上的平移量。
- 透视变换:矩阵的第四行用于透视变换,通常表示投影平面上的坐标系。
- 缩放变换:矩阵的对角线元素表示缩放变换的比例因子,例如,x轴缩放因子为矩阵的第一个元素,y轴缩放因子为第二个元素,z轴缩放因子为第三个元素。
平移
对于一个3D空间中的点A(x, y, z),我们可以使用一个4x1列向量表示它,如下所示:
1 | x |
其中最后一个元素为1,这是为了让矩阵乘法能够正确地进行。
要对这个点进行平移变换,我们可以创建一个如下所示的4x4矩阵:
1 | 1 0 0 tx |
其中(tx, ty, tz)表示平移向量。然后,我们可以将该点与矩阵相乘来进行变换,如下所示:
1 | x' = x + tx |
缩放
缩放矩阵
1 | sx 0 0 0 |
缩放后点A为A’
1 | x' = x*sx |