提交 e87b6655 编写于 作者: M Mr.doob

Merge pull request #8477 from tschw/fix8449

Fixed test for Matrix3.getInverse.
......@@ -171,7 +171,7 @@ THREE.Matrix3.prototype = {
if ( matrix instanceof THREE.Matrix4 ) {
console.warn( "THREE.Matrix3.getInverse no longer takes a Matrix4 argument." );
console.error( "THREE.Matrix3.getInverse no longer takes a Matrix4 argument." );
}
......
......@@ -142,14 +142,14 @@ test( "determinant", function() {
test( "getInverse", function() {
var identity = new THREE.Matrix4();
var a = new THREE.Matrix4();
var identity = new THREE.Matrix3();
var identity4 = new THREE.Matrix4();
var a = new THREE.Matrix3();
var b = new THREE.Matrix3().set( 0, 0, 0, 0, 0, 0, 0, 0, 0 );
var c = new THREE.Matrix4().set( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
var c = new THREE.Matrix3().set( 0, 0, 0, 0, 0, 0, 0, 0, 0 );
ok( ! matrixEquals3( a, b ), "Passed!" );
b.getInverse( a, false );
ok( matrixEquals3( b, new THREE.Matrix3() ), "Passed!" );
ok( matrixEquals3( a, identity ), "Passed!" );
try {
b.getInverse( c, true );
......@@ -172,17 +172,19 @@ test( "getInverse", function() {
for( var i = 0, il = testMatrices.length; i < il; i ++ ) {
var m = testMatrices[i];
var mInverse3 = new THREE.Matrix3().getInverse( m );
a.setFromMatrix4( m );
var mInverse3 = b.getInverse( a );
var mInverse = toMatrix4( mInverse3 );
// the determinant of the inverse should be the reciprocal
ok( Math.abs( m.determinant() * mInverse3.determinant() - 1 ) < 0.0001, "Passed!" );
ok( Math.abs( a.determinant() * mInverse3.determinant() - 1 ) < 0.0001, "Passed!" );
ok( Math.abs( m.determinant() * mInverse.determinant() - 1 ) < 0.0001, "Passed!" );
var mProduct = new THREE.Matrix4().multiplyMatrices( m, mInverse );
ok( Math.abs( mProduct.determinant() - 1 ) < 0.0001, "Passed!" );
ok( matrixEquals3( mProduct, identity ), "Passed!" );
ok( matrixEquals3( mProduct, identity4 ), "Passed!" );
}
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册