本章笔记会有部分选取自《3D数学基础:图形与游戏开发》一书
仿射变换:包括平移和线性变换(旋转、切变等)
使用齐次坐标表示时,向量表示为(x, y, z, 0),而点表示为(x, y, z, 1)。
4.1基本变换(Basic Transforms)
4.1.1平移(Translation)
4.1.2旋转(Rotation)
与平移同样,是一种刚体变换(rigid-body transform),即,它保留了变换点之间的距离,并保留了手性(handedness)(即不会翻转左右)
绕原点逆时针旋转φ°的旋转矩阵R(2D):
绕单个坐标轴逆时针旋转φ°的旋转矩阵R(3D):
4.1.3缩放(Scaling)
沿坐标轴缩放
若缩放矩阵中含有一个或三个比例因子为负值,则其表示一种反射矩阵,也称为镜像矩阵。
如果只有两个比例因子为-1,那么将旋转弧度π。
反射矩阵被检测到时,通常会被“特殊对待”。
例如,当顶点由逆矩阵转换时,其顶点具有逆时针顺序的三角形将得到顺时针顺序。此顺序更改可能导致不正确的照明和背面剔除。
沿特定轴缩放: