|
@@ -126,20 +126,22 @@ THREE.Matrix4.prototype = {
|
|
|
|
|
|
}(),
|
|
|
|
|
|
- makeRotationFromEuler: function ( rotation ) {
|
|
|
+ makeRotationFromEuler: function ( euler ) {
|
|
|
+
|
|
|
+ if ( typeof euler['order'] === undefined ) {
|
|
|
|
|
|
- if( typeof rotation['order'] === undefined ) {
|
|
|
console.error( 'ERROR: Matrix\'s .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order. Please update your code.' );
|
|
|
+
|
|
|
}
|
|
|
|
|
|
var te = this.elements;
|
|
|
|
|
|
- var x = rotation.x, y = rotation.y, z = rotation.z;
|
|
|
+ var x = euler.x, y = euler.y, z = euler.z;
|
|
|
var a = Math.cos( x ), b = Math.sin( x );
|
|
|
var c = Math.cos( y ), d = Math.sin( y );
|
|
|
var e = Math.cos( z ), f = Math.sin( z );
|
|
|
|
|
|
- if ( rotation.order === undefined || rotation.order === 'XYZ' ) {
|
|
|
+ if ( euler.order === undefined || euler.order === 'XYZ' ) {
|
|
|
|
|
|
var ae = a * e, af = a * f, be = b * e, bf = b * f;
|
|
|
|
|
@@ -155,7 +157,7 @@ THREE.Matrix4.prototype = {
|
|
|
te[6] = be + af * d;
|
|
|
te[10] = a * c;
|
|
|
|
|
|
- } else if ( rotation.order === 'YXZ' ) {
|
|
|
+ } else if ( euler.order === 'YXZ' ) {
|
|
|
|
|
|
var ce = c * e, cf = c * f, de = d * e, df = d * f;
|
|
|
|
|
@@ -171,7 +173,7 @@ THREE.Matrix4.prototype = {
|
|
|
te[6] = df + ce * b;
|
|
|
te[10] = a * c;
|
|
|
|
|
|
- } else if ( rotation.order === 'ZXY' ) {
|
|
|
+ } else if ( euler.order === 'ZXY' ) {
|
|
|
|
|
|
var ce = c * e, cf = c * f, de = d * e, df = d * f;
|
|
|
|
|
@@ -187,7 +189,7 @@ THREE.Matrix4.prototype = {
|
|
|
te[6] = b;
|
|
|
te[10] = a * c;
|
|
|
|
|
|
- } else if ( rotation.order === 'ZYX' ) {
|
|
|
+ } else if ( euler.order === 'ZYX' ) {
|
|
|
|
|
|
var ae = a * e, af = a * f, be = b * e, bf = b * f;
|
|
|
|
|
@@ -203,7 +205,7 @@ THREE.Matrix4.prototype = {
|
|
|
te[6] = b * c;
|
|
|
te[10] = a * c;
|
|
|
|
|
|
- } else if ( rotation.order === 'YZX' ) {
|
|
|
+ } else if ( euler.order === 'YZX' ) {
|
|
|
|
|
|
var ac = a * c, ad = a * d, bc = b * c, bd = b * d;
|
|
|
|
|
@@ -219,7 +221,7 @@ THREE.Matrix4.prototype = {
|
|
|
te[6] = ad * f + bc;
|
|
|
te[10] = ac - bd * f;
|
|
|
|
|
|
- } else if ( rotation.order === 'XZY' ) {
|
|
|
+ } else if ( euler.order === 'XZY' ) {
|
|
|
|
|
|
var ac = a * c, ad = a * d, bc = b * c, bd = b * d;
|
|
|
|