《Real time rending》 3rd 学习笔记(第四章)
1.摘要
4 变换 变换是这样一种操作:将点、矢量或颜色之类的用某种方式转换它们。对于计算机图像从业者,掌握变换非常重要。使用变化,你可以定位、变形和动画物体、光源和镜头。所有运算都是在相同坐标系统中,使用不同方式将物体被投影在平面上。
2.
4 变换
变换是这样一种操作:将点、矢量或颜色之类的用某种方式转换它们。对于计算机图像从业者,掌握变换非常重要。使用变化,你可以定位、变形和动画物体、光源和镜头。所有运算都是在相同坐标系统中,使用不同方式将物体被投影在平面上。
线性变换(liner transform)保持矢量和或标量乘积的变换:
f(x)+f(y+=f(x+y)
kf(x)=f(kx)
例如,f(x)=5x变换取一个标量x并将x中每个元素乘5,这种变换是线性的,任何两个矢量乘5后相加与先加再成结果相同。这个函数叫做缩放变换(scaling transform),它改变了物体的大小。旋转变换是另一种变化,它从起点旋转一个矢量。缩放和旋转,事实上所有3元素矢量的线性变换都可以用一个3*3矩阵表示。
但是这个矩阵一般不够大。一个3元素向量的函数f(x)=x+(7,3,2)不是线性的,将这个函数应用在两个独立向量上,形成结果时将增加(7,3,2)两次。[f(x)+f(y)≠f(x+y)]。为一个矢量增加固定矢量执行了一次平移(translation),例如,它将所有位置移动了相同的数量。这是一种有用的变换,我们将这几种变化联合起来。
联合线性变换和平移可以使用仿射变换(affine transform),储存为4*4矩阵。反射变换先执行一个线性变换,然后执行一次平移。为表示4元矢量我们使用正交符号(homogeneous notation),使用相同的方式表示点和方向。方向矢量表示为v=(vx vy vz 0)T,点矢量表示为v=(vx vy vz 1)T。
所有的平移,旋转,缩放,反射和剪切矩阵是仿射的。仿射矩阵的主要特征是它保持直线间的平行关系,但长度和角度可变。一个仿射变换也可以是若干独立仿射矩阵的序列。
2.1.
4.1 基本变换(Basic Transforms)
这一段描述了最基本的变换,例如平移(translation),旋转(rotation),缩放(scaling),修剪(shearing),变换连接(transform concatenation),刚体变换(rigid-body transform)、法线变换(normal transform)和反向运算(computation of inverses)。
2.1.1.
4.1.1 平移(translation)
一个平移矩阵T代表由一个位置改变为其他位置的变换。这个矩阵将一个实体平移向量t=(tx,ty,tz)。(矩阵见书)。
====更新中====
本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可,转载请注明作者及原网址。
抱歉,暂停评论。