文章目录
正式内容之前的一点小tip:(之后会用到)
旋转负角度带入原来的旋转矩阵,结果得到的形式是原来的转置
有根据定义旋转负的角度等于原来的逆
因此得到:它的转置等于它的逆
正交矩阵的定义
如果:AAT=E(E为单位矩阵,AT表示“矩阵A的转置矩阵”。)或ATA=E,则n阶实矩阵A称为正交矩阵。
一、3D Transformations
1.回顾上节课的知识
齐次坐标系中的点实际在三维空间中表示的点(后面会用到)
表示先进行线性变换,然后再平移
2.三维空间中的旋转
2.1绕x轴,y轴,z轴做旋转
旋转矩阵(循环对称的性质)
==注意:==绕y轴旋转时,x叉乘z的结果是-y,所以才会跟其它两个相反
2.2任意旋转
欧拉角:可以用来定义任何旋转
2.3 Rodrigues’ Rotation Formula
绕n轴旋转
α
\alpha
α角度
公式中的N部分类似于向量叉乘的矩阵表示形式
默认旋转轴是过原点的,而且起点在原点处
可以考虑把任意旋转都先移动到原点上,然后再移回去
四元数的引入主要是为了旋转与旋转之间的差值
二、View/Camera Transformation
如果相机与物体一起运动(无相对运动),则照片会一直不变
那如果将相机永远放在原点不动呢?(为了操作简化)
但是将任意位置的轴向量旋转到原点并不是一件容易的事情,然而我们可以考虑将原点移到目标轴位置,再求逆!!!
那怎样把这种变换写成矩阵形式呢?
首先将原点平移到正确位置
三、Projection Transformation
1.Projection Transformation的两种方式
3D到2D的投影方式有两种,包括正交投影和透视投影
2.Orthographic Projection
一种简单的描述方式是:
先将相机放在原点上。向-Z方向看,上方是Y
扔掉z坐标
平移并缩放得到的结果进[-1—1]的小矩形内
正式定义方式:
注意: Z轴方向离我们近的方向的坐标值大,远的坐标值大(因为是沿着-Z方向去看)
变换矩阵如下所示:
先将中心点平移到原点,然后再缩放他的长、宽、高都为2
3.Perspective Projection
透视投影的特点:
(1)大多数计算机图形学领域都在用它
(2)近大远小
(3)平行线不再平行,最后会相交于一点
回忆重要的知识:
在齐次坐标中它们都表示同一个点
具体怎么去做透视投影呢?
先将四棱台压缩成长方体,长方体的前表面与四棱台的顶面相等。
结合相似三角形,表示投影后的坐标
用齐次坐标表示
虽然有数据是不知道的,但根据已知信息已经可以写出变换矩阵的一大部分
根据上面的重要知识,近平面上的点可以有新的表现形式
因此根据矩阵的乘法知识我们可以得出新的线索
远平面上的点同理可得到
然后解方程组
现在,转换矩阵已经完全推理出来了
下面就可以再进行正交投影啦~