3D数学-学习笔记(4):缩放

3D数学--学习笔记(四):缩放

如何能得到沿任意轴的3D缩放矩阵呢?

为了解决这个问题,我们可以先研究下——如何得到沿任意轴的2D缩放矩阵,把问题范围先缩小再扩大。

上图:

3D数学-学习笔记(4):缩放

建立直角坐标系如图,任意向量V,分解为VT和VII,n向量为平行于缩放方向的单位向量,VT垂直于n向量,VII平行于n向量,注意这里,为什么可以这样建立模型,

根据平面向量的基本定理可知:平面向量可以沿任意指定的两方向进行分解。上面的这才是关键,下面的都是基本向量运算。

OK,我们已知了待缩放向量v,缩放方向为n向量,缩放因子k,我们的目的是,如何用这三个已知量表示出缩放后向量v ' 。

3D数学-学习笔记(4):缩放

此时,我们已经知道了任意向量进行缩放的公式,当然也就可以据此计算出缩放后的基向量。

p = [1  0]

于是有:

p' = p + (k - 1)(p*n)n。

然后就是简单的加减矩阵运算了.....

得到:

3D数学-学习笔记(4):缩放

OK,2D搞定,3D的话,

p = [1  0  0]

p' = p + (k - 1)(p*n)*n

最后得到:

3D数学-学习笔记(4):缩放

于是,我们就得到了沿任意轴的3D缩放矩阵。

欢迎交流!