矩阵是如何变换向量的?
原创作者:金庭波
通俗的理解,想把一个物体变大变小,将此物体乘一个系数就行了;这个物体在数学中是用向量表示的;那就变成了向量乘以一个系数就行了。 但这个物体它是有维度的,所以它的各个维度的系数都不一样,所以最好的办法是用一个矩阵来表示它各个方面的系数。这样,物体的变化就变成了向量与矩阵乘的结果了。
一个向量v=[x y z],它可以写成它的基向量的线性组和形式:v=xp+yq+zr;
这样,v的线性变换就成了基向量p、q、r的线性变换了。
基向量是与座标系联系在一起的,比如:
p=[1 0],就表示2D座标系,在x轴上为1,在y轴上为0;
p=[1 0 0],就表示3D座标系,在x轴上为1,y轴上为0,z轴上为0;
q、r基向量与座标系的联系同理。
基向量又是如何与矩阵联系起来的呢?
矩阵其实是一个数组容器,一个3D空间的基向量p,q,r当然可以放在矩阵中:
| p | | px py pz |
M=| q | = | qx qy qz |
| r | | rx ry rz |
重点来了:矩阵又是如何把向量变换的呢?
只需要向量乘该矩阵就可以了,注意不能矩阵乘向量哦!因为它不支持交换律。
比如要把一个向量v=[x y z] 用M进行变换,就用v.M就可以了。
向量,你可以理解为一个物体的一个边或一个顶点之类的,这样向量就与物体联系起来了,向量的变换,其实就是物体变换了。