【发布时间】:2018-07-30 02:30:12
【问题描述】:
我有一个 3X3 矩阵,如下所示:
[ a11 a12 a13 ]
[ a21 a22 a23 ]
[ a31 a32 a33 ]
但是如何在 THREE.js 中将此矩阵用于网格的旋转。
【问题讨论】:
标签: three.js
我有一个 3X3 矩阵,如下所示:
[ a11 a12 a13 ]
[ a21 a22 a23 ]
[ a31 a32 a33 ]
但是如何在 THREE.js 中将此矩阵用于网格的旋转。
【问题讨论】:
标签: three.js
您想通过矩阵指定网格的方向。为此,您可以使用以下两种模式之一:
var matrix = new THREE.Matrix4(); // create once and reuse it
matrix.set(
a11, a12, a13, 0,
a21, a22, a23, 0,
a31, a32, a33, 0,
0, 0, 0, 1
);
如果您知道该矩阵是一个旋转矩阵(即不涉及缩放),
mesh = new THREE.Mesh( geometry, material );
mesh.quaternion.setFromRotationMatrix( matrix );
否则,
mesh = new THREE.Mesh( geometry, material );
mesh.applyMatrix( matrix );
three.js r.94
【讨论】:
mesh.quaternion.setFromRotationMatrix( matrix ); mesh.scale.set( x2, y2, z2 ); mesh.position.set( x1, y1, z1 ); 欢迎来到 SO。您可以通过单击复选标记来接受答案。