2016-09-28 256 views
0

我刚开始尝试为JS找到/使用矩阵运算库。我想在2D矩阵上进行简单的平移,缩放和旋转操作。 mozilla developer website建议GLMatrix“注重速度和性能”。如何使用GLMatrix进行矩阵乘法?

我只是想在矩阵上做一些简单的2D转换,使用mat2d。我想要做这样的事情:

var a = mat2d.fromValues(2,0,2,0,0,0); 
 
var b = mat2d.fromValues(1,3,3,1,-1,-2); 
 
var ans = mat2d(); 
 

 
mat2d.multiply(ans,a,b);
<script src="https://cdnjs.cloudflare.com/ajax/libs/gl-matrix/2.3.2/gl-matrix-min.js"></script>

,但我不能有语法正确的,因为我得到一个Uncaught TypeError: mat2d is not a functionJSFiddle)。我正在使用GL-matrix-min.js发现here

如何修复上面的矩阵乘法代码片段?

回答

1

使用

var ans = mat2d.create(); 

创建一个新的(身份)矩阵。请参阅docssource

+0

谢谢;这样可行。问题,但:正好在该函数之上(在[源](https://github.com/toji/gl-matrix/blob/master/src/gl-matrix/mat2d.js#L41))是一条线说'var mat2d = {};'。不会创建一个空白的mat2d对象吗? – user2441511

+1

@ user203212546不,它只是创建“命名空间”。 (一个空的对象,基本上用作函数的字典) –

+0

Gotcha。感谢您的帮助。 – user2441511