作用
- 通过变换,可以简洁高效地设置和编辑三维场景
- 光照位置
- 视点方向
基本变换
- 将空间中一个点x映射成其他点x1的函数
- 就是一个映射函数,可以表示成矩阵
- 不变Identity 平移 Translation 旋转 Rotation 均衡缩放 Isotropic scaling
- 简单变换都是可逆的
- 变换可以相互复合与嵌套
变换的种类
刚体变换
- 保持度量(长度,角度,大小)
- 不变,平移, 旋转 以及复合
相似变换
- 保持角度
- 不变,平移,旋转,均衡缩放以及复合
线性变换
- 满足方程L(p+q)=L§+L(q) aL§ = L(ap)
- 不变,旋转,缩放(不一定要均衡缩放)
- 对称,错切
仿射变换
- 保持直线以及直线与直线的平行
- 线性变换
- 相似变换以及复合
投影变换
齐次坐标
- 因为用三维矩阵的形式会有个常数在外面不够优美
- 然后就用四维矩阵来表示三维空间中的点和向量
- 然后很多变换都可以用矩阵来表示了
- 在用齐次坐标表示变换矩阵的几种形式里面
- 旋转我不明白
- 围绕单位向量的旋转变换很复杂,我也不明白
变换的复合
- 就是两个映射矩阵的乘积,因为矩阵不满足交互律
- 因此交换的复合也是不满足交换律的
法向量变换
- 因为在物体发生变换以后,他原来的法向量不再与其正交
- 因此我们需要找到一个变换矩阵,让原来的法向量与其相乘后,得到变换后的法向量
- 先变换切平面,再通过切平面计算法向量,而不是直接计算
- 因此法向量的变换矩阵是原变换矩阵的逆的转置
投影模式
- 透视投影(视点在有限距离处的投影模式),具有立体效果
- 当视点位于原点,投影平面为z=d时
- 透视投影矩阵T(x,y,z)=(dx/z,dy/z,z)
- 正交投影(假如xy平面是投影平面,直接扔掉z坐标即可)