变换
Why Transformation 什么是变换
1.移动
2.压缩
3.维度变换
2d Transform 2D变换
Scale 大小变换
缩放矩阵 Scale Martrix
不均匀缩放 Non-Uniform
反射矩阵 Reflection Matrix
Shear Matrix 切变
通过寻找每个坐标变化的规律,来推导变化的矩阵
寻找一一对应的关系
旋转
规定:默认绕着原点,默认逆时针
旋转矩阵
推导过程:
任意点符合公式——》特殊点也符合
从(1,0)点推导
2维线性变化规律矩阵公式
Linear Transforms
齐次坐标 Homogeneous Coordinates
为什么要有齐次坐标 Why Homogeneous Coordinates
如果没有齐次坐标,平移变换,无法通过二维矩阵直接达成,不属于线性变换。
Trade off:为了方便,引入一个新的概念,虽然解决了一个问题,但是会带了另一个方面的副作用。
所有为了方便和统一变换,引入齐次坐标,即为二维坐标添加了第三个维度。
2D Vector向量因为具有平移不变性,所以第三维为0。
不仅如此,多出来的一维齐次坐标后,向量与坐标进行加减后,仍然满足我们人理解的结果。
如:向量+向量=向量,坐标-坐标=向量,坐标+向量 = 坐标,(坐标+坐标=坐标的中点)如图
齐次坐标最终目的:不希望有一个特殊的平移变换,引入齐次坐标来统一变换
仿射变换 Affine Transformations
仿射变换下的缩放和旋转
Inverse Transform
逆变换
Composite Transform 变换组合
复杂的变换可以由简单的组合
变换的顺序有很大影响
矩阵的乘法 |
不满足交换律 |
从右到左进行计算 |
有结合律 |
变换满足结合律,所以可以用一个矩阵,来表示一个复杂的变换。
变换可逆分解,所以可以利用这个性质。
3D Transforms
类比二维
Problem:先变换还是先平移 我觉得是先变换