浏览代码

Merge branch 'dev' of https://github.com/mrdoob/three.js into dev

Mr.doob 9 年之前
父节点
当前提交
3d808e4e1a
共有 3 个文件被更改,包括 16 次插入13 次删除
  1. 5 4
      examples/js/effects/AnaglyphEffect.js
  2. 1 1
      src/math/Matrix3.js
  3. 10 8
      test/unit/math/Matrix3.js

+ 5 - 4
examples/js/effects/AnaglyphEffect.js

@@ -10,22 +10,23 @@ THREE.AnaglyphEffect = function ( renderer, width, height ) {
 	// Matrices generated with angler.js https://github.com/tschw/angler.js/
 	// (in column-major element order, as accepted by WebGL)
 
-	this.colorMatrixLeft = new THREE.Matrix3().set(
+	this.colorMatrixLeft = new THREE.Matrix3().fromArray( [
 
 			1.0671679973602295, 	-0.0016435992438346148,		 0.0001777536963345483, // r out
 			-0.028107794001698494,	-0.00019593400065787137,	-0.0002875397040043026, // g out
 			-0.04279090091586113,	 0.000015809757314855233,	-0.00024287120322696865 // b out
-	);
+
+	] );
 
 	//		red						green 						blue  						in
 
-	this.colorMatrixRight = new THREE.Matrix3().set(
+	this.colorMatrixRight = new THREE.Matrix3().fromArray( [
 
 			-0.0355340838432312,	-0.06440307199954987,		 0.018319187685847282,	// r out
 			-0.10269022732973099,	 0.8079727292060852,		-0.04835830628871918,	// g out
 			0.0001224992738571018,	-0.009558862075209618,		 0.567823588848114		// b out
 
-	);
+	] );
 
 	var _camera = new THREE.OrthographicCamera( - 1, 1, 1, - 1, 0, 1 );
 

+ 1 - 1
src/math/Matrix3.js

@@ -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." );
 
 		}
 

+ 10 - 8
test/unit/math/Matrix3.js

@@ -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!" );
 	}
 });