目录
围绕x , y , z轴旋转, 唯独围绕y轴不一样 , 因为是z叉乘x , 顺序变反了. (右手定则)
第三节课 : Transform变换
2D线性变换(通过一个值的输入得到变换后的值):
1.Scale 缩放:
按x轴, y轴缩小0.5倍
x’=s*x , y’=s*y
按x轴缩小0.5倍, y轴不缩放
x’=sx*x , y’=sy*y
2. Reflection 反射:
3.Shear 切变 :
x’ = x+ay , y’=y
4.Rotation 旋转:
假设正方形边长为1
蓝色推导的点为从(1 , 0) 旋转到 (cosθ, sinθ)
黄色推导的点为从(0 , 1) 旋转到 (cosθ, - sinθ)
推导过程:
转换公式:正交矩阵(矩阵的逆==矩阵的转置)
Translation 齐次坐标
引入齐次坐标是为了不要平移操作导致的特殊公式,统一变为一个矩阵乘以一个(向量或点).
2D齐次坐标
点的齐次坐标
平移操作
向量的齐次坐标 , 0是为了保证向量的平移不变性
如果齐次坐标最后一个数为0 或 1则操作有效 : point为点 , vector为向量
点与点相加
Point (x1 , y1 , 1) + Point (x2 , y2 , 1) = Point (x1+x2 , y1+y2 , 2)
此时第三维度的数不是0 , 也不是1. 需要做以下操作:
Affine Transform 仿射变换
转换为齐次坐标:
相关变换的齐次方程
矩阵变换 , 有顺序区别 , 必须从右到左逐一相乘
分解变换 :
3D Transformations 三维变换:
点 , 向量表达形式
3D齐次方程:
上述的齐次方程哪个变换先执行?
答 : 先进行线性变换,后进行平移
缩放:
平移:
围绕x , y , z轴旋转:
唯独围绕y轴不一样 , 因为是z叉乘x , 顺序变反了. (右手定则)
围绕n轴(任意一个有起点的向量)作α角度的旋转:
注释 : T代表转置(行列交换位置) , I代表单位矩阵 .