最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

c语言 4x4矩阵乘法,4x4矩阵乘法为了

IT圈 admin 29浏览 0评论

c语言 4x4矩阵乘法,4x4矩阵乘法为了

使用下面的图书馆我“米:4x4矩阵乘法为了

然而,问题是不同的结果时,我采取不同的方式相同的步骤,我越来越:

//Example 1

m = tdl.math.matrix4.identity();

tdl.math.matrix4.rotateX(m, 90*(Math.PI/180));

tdl.math.matrix4.translate(m, [10,20,30]);

console.log (m); //output down below 1

//Example2

i = tdl.math.matrix4.identity();

r = tdl.math.matrix4.rotationX(90*(Math.PI/180));

t = tdl.math.matrix4.translation([10,20,30]);

m = tdl.math.matrix4.mul(i, r);

m = tdl.math.matrix4.mul(m, t);

console.log(m); // output down below 2

这两种方法都有动作的顺序相同,即

身份

绕×90度

10倍平移,20Y

但是,输出是不一样的,这里是输出1:

[1, 0, 0, 0, 0, 6.123233995736766e-17, 1, 0, 0, -1, 6.123233995736766e-17, 0, 10, -30, 20.000000000000004, 1]

这里是输出2

[1, 0, 0, 0, 0, 6.123233995736766e-17, 1, 0, 0, -1, 6.123233995736766e-17, 0, 10, 20, 30, 1]

为什么结果不同,当我似乎采取相同的步骤?

2014-02-17

David

c语言 4x4矩阵乘法,4x4矩阵乘法为了

使用下面的图书馆我“米:4x4矩阵乘法为了

然而,问题是不同的结果时,我采取不同的方式相同的步骤,我越来越:

//Example 1

m = tdl.math.matrix4.identity();

tdl.math.matrix4.rotateX(m, 90*(Math.PI/180));

tdl.math.matrix4.translate(m, [10,20,30]);

console.log (m); //output down below 1

//Example2

i = tdl.math.matrix4.identity();

r = tdl.math.matrix4.rotationX(90*(Math.PI/180));

t = tdl.math.matrix4.translation([10,20,30]);

m = tdl.math.matrix4.mul(i, r);

m = tdl.math.matrix4.mul(m, t);

console.log(m); // output down below 2

这两种方法都有动作的顺序相同,即

身份

绕×90度

10倍平移,20Y

但是,输出是不一样的,这里是输出1:

[1, 0, 0, 0, 0, 6.123233995736766e-17, 1, 0, 0, -1, 6.123233995736766e-17, 0, 10, -30, 20.000000000000004, 1]

这里是输出2

[1, 0, 0, 0, 0, 6.123233995736766e-17, 1, 0, 0, -1, 6.123233995736766e-17, 0, 10, 20, 30, 1]

为什么结果不同,当我似乎采取相同的步骤?

2014-02-17

David

发布评论

评论列表 (0)

  1. 暂无评论