前言
在学习渲染管线的时候,一定会学习到坐标系装换,
局部坐标系->世界坐标系->相机坐标系->屏幕坐标系
可能你会知道,向量在不同坐标系之间的转换就是乘以矩阵,可你知道为什么乘以矩阵就能完成坐标系的转换? 矩阵的各个值是怎么来的么?
向量相乘
要想理解坐标系转换,一定要知道两个向量点乘的几何意义是什么?
众所周知,A·B=|A||B|cos(β),它表示的几何意义就是:向量A在向量B方向投影的长度 乘以 向量B的模长。
如果向量B为单位向量,即向量B的模长为1,那A·B=|A|cos(β),几何意义就是:向量A在向量B方向投影的长度。
![](https://img.haomeiwen.com/i15040312/62dba8b31844851a.png)
向量的分量
向量的每个分量是怎么来的呢?
例如二维标准坐标系中,向量 A = (a, b), a的值就是向量A 在x轴方向的投影,b的值就是向量A 在y轴方向的投影,x轴的向量为 x=(1, 0),y轴的向量为y=(0, 1),所以a = A·x, b = A·y。
同样在其他坐标系中也同样适用此方法。(这里只讨论正交坐标系)
假设有两个基向量L,R(L,R正交)组成的二维坐标系,求向量v = (l, r) 在该坐标空间中的向量v'。(注:向量L,R,v都是基于同一坐标系)
由上面的理论,我们可以知道,向量在某个坐标系下分量的值就是向量在每个基向量方向的投影,因此 v' = (v·L, v.R)
矩阵形式
上面的式子可以写成矩阵的形式:
![](https://img.haomeiwen.com/i15040312/8c7ed89788346479.gif)
三维坐标系装换亦是如此,不再列举
结束
以上是3D数学的基础,必须要理解的!
网友评论