3D数学基础:图形与游戏开发__向量的矩阵转换

本来是想坚持写读书笔记,至少每两周一篇博客的,看来又失败了。上次写博客的时间是12月7日,变成了俩月一篇,蛋疼额,看来我还是没有我想象中的那么有毅力!这个要改!

好啦,先不说废话啦,还是进入正题吧!

--------------------------------------------------------------

这段时间开始看《3D数学基础:图形与游戏开发》这本书,突然弄明白了关于 向量的矩阵转换的方式,所以先记录下来,有什么不对的地方,还请大家帮忙指正,共同进步!

 则表示向量 进行了矩阵的变换,以前我一直很疑惑这中间到底进行了什么变换呢? 产生了什么效果呢?

 

我们知道, 每个向量我们都可以分解成基向量相加的形式即:

 

a = x·[1  0  0]  + y·[0  1  0] + z·[0  0  1]

 

然后 我们再看前面的变换公式

a·= [x·px + y·qx + z·rx   x·py + y·qy + z·ry   x·pz + y·qz + z·rz]

        = x·[px  py  pz]  +  y·[qx  qy  qz]  +  z·[rx  ry  rz]

 

看着上面的公式,是不是有种似曾相识的感觉?我们对比前面的向量 的分解公式,形式完全一样,不是么?

 

到这里,我们可以发现了这次矩阵变换的主要内容了,就是把对应于三个方向的 基向量 变换成了 矩阵的 pqr三个向量!!

比如 p = [2  0  0] 则表示在x方向上放大2

P = [2  2  0] 则表示x方向向y方向偏转45°并且放大2·2^0.5倍!!

 

通过这些即可对一些向量进行 旋转 缩放了!!

 

 

 

posted @ 2013-02-07 12:43  愤怒的豆沙包  阅读(438)  评论(0编辑  收藏  举报