如何在任何编程语言中将两个3D矩阵相互叠加

时间:2016-07-14 18:02:34

标签: 3d matrix-multiplication

我想知道两个三维矩阵是否可以相乘?如果是,我如何乘以两个三维矩阵。 谢谢。

1 个答案:

答案 0 :(得分:0)

如果我们的矩阵是OK,则从2D开始简单

[a11,a12,a13] [a12,a22,a23]

其中a13是x转换,a23是y转换。

我们在[0,0,1]上增加了一行,所以我们有

[a11,a12,a13] [a12,a22,a23] [0,0,1]

我们对b矩阵做类似的事情。现在,对于结果中的第一个位置,我们穿过A并向下穿过B。我们最终得到....

[a11.b11 + a12.b21,a11.b12 + a12.b22,a11.b13 + a12.b23 + a13] [a21.b11 + a22.b21,a21.b12 + a22.b22,a21.b13 + a22.b23 + a23] [0,0,1]

我们可以将该3x3矩阵传递给其他函数,并且当我们进行渲染时,我们只是忽略了底行。 3D矩阵只是此概念的扩展,因此您的矩阵为4x4,底行为[0,0,0,1]