Home | History | Annotate | Download | only in resources

Lines Matching refs:matrix

31         J3DIMatrix4 - A 4x4 Matrix
37 This class implements a 4x4 matrix. It has functions which duplicate the
38 functionality of the OpenGL matrix stack and glut functions. On browsers
44 Constructor(in J3DIMatrix4 matrix), // copy passed matrix into new J3DIMatrix4
46 Constructor() // create new J3DIMatrix4 with identity matrix
49 void load(in J3DIMatrix4 matrix); // copy the values from the passed matrix
50 void load(in sequence<float> array); // copy 16 floats into the matrix
51 sequence<float> getAsArray(); // return the matrix as an array of 16 floats
52 Float32Array getAsFloat32Array(); // return the matrix as a Float32Array with 16 values
53 void setUniform(in WebGLRenderingContext ctx, // Send the matrix to the passed uniform location in the passed context
56 void makeIdentity(); // replace the matrix with identity
57 void transpose(); // replace the matrix with its transpose
58 void invert(); // replace the matrix with its inverse
60 void translate(in float x, in float y, in float z); // multiply the matrix by passed translation values on the right
61 void translate(in J3DVector3 v); // multiply the matrix by passed translation values on the right
62 void scale(in float x, in float y, in float z); // multiply the matrix by passed scale values on the right
63 void scale(in J3DVector3 v); // multiply the matrix by passed scale values on the right
64 void rotate(in float angle, // multiply the matrix by passed rotation values on the right
66 void rotate(in float angle, in J3DVector3 v); // multiply the matrix by passed rotation values on the right
68 void multiply(in CanvasMatrix matrix); // multiply the matrix by the passed matrix on the right
69 void divide(in float divisor); // divide the matrix by the passed divisor
70 void ortho(in float left, in float right, // multiply the matrix by the passed ortho values on the right
73 void frustum(in float left, in float right, // multiply the matrix by the passed frustum values on the right
76 void perspective(in float fovy, in float aspect, // multiply the matrix by the passed perspective values on the right
78 void lookat(in J3DVector3 eye, // multiply the matrix by the passed lookat
80 bool decompose(in J3DVector3 translate, // decompose the matrix into the passed vector
98 Float32Array getAsFloat32Array(); // return the matrix as a Float32Array with 16 values
99 void multMatrix(in J3DIMatrix4 matrix); // multiply the vector by the passed matrix (on the right)
127 this.$matrix = new WebKitCSSMatrix;
129 this.$matrix = new Object;
147 var matrix;
150 matrix = arguments[0].$matrix;
152 this.$matrix.m11 = matrix.m11;
153 this.$matrix.m12 = matrix.m12;
154 this.$matrix.m13 = matrix.m13;
155 this.$matrix.m14 = matrix.m14;
157 this.$matrix.m21 = matrix.m21;
158 this.$matrix.m22 = matrix.m22;
159 this.$matrix.m23 = matrix.m23;
160 this.$matrix.m24 = matrix.m24;
162 this.$matrix.m31 = matrix.m31;
163 this.$matrix.m32 = matrix.m32;
164 this.$matrix.m33 = matrix.m33;
165 this.$matrix.m34 = matrix.m34;
167 this.$matrix.m41 = matrix.m41;
168 this.$matrix.m42 = matrix.m42;
169 this.$matrix.m43 = matrix.m43;
170 this.$matrix.m44 = matrix.m44;
174 matrix = arguments[0];
176 if ("length" in matrix && matrix.length >= 16) {
177 this.$matrix.m11 = matrix[0];
178 this.$matrix.m12 = matrix[1];
179 this.$matrix.m13 = matrix[2];
180 this.$matrix.m14 = matrix[3];
182 this.$matrix.m21 = matrix[4];
183 this.$matrix.m22 = matrix[5];
184 this.$matrix.m23 = matrix[6];
185 this.$matrix.m24 = matrix[7];
187 this.$matrix.m31 = matrix[8];
188 this.$matrix.m32 = matrix[9];
189 this.$matrix.m33 = matrix[10];
190 this.$matrix.m34 = matrix[11];
192 this.$matrix.m41 = matrix[12];
193 this.$matrix.m42 = matrix[13];
194 this.$matrix.m43 = matrix[14];
195 this.$matrix.m44 = matrix[15];
206 this.$matrix.m11, this.$matrix.m12, this.$matrix.m13, this.$matrix.m14,
207 this.$matrix.m21, this.$matrix.m22, this.$matrix.m23, this.$matrix.m24,
208 this.$matrix.m31, this.$matrix.m32, this.$matrix.m33, this.$matrix.m34,
209 this.$matrix.m41, this.$matrix.m42, this.$matrix.m43, this.$matrix.m44
217 this.$matrix.copy(array);
231 this.$matrix.copy(J3DIMatrix4.setUniformWebGLArray);
233 J3DIMatrix4.setUniformArray[0] = this.$matrix.m11;
234 J3DIMatrix4.setUniformArray[1] = this.$matrix.m12;
235 J3DIMatrix4.setUniformArray[2] = this.$matrix.m13;
236 J3DIMatrix4.setUniformArray[3] = this.$matrix.m14;
237 J3DIMatrix4.setUniformArray[4] = this.$matrix.m21;
238 J3DIMatrix4.setUniformArray[5] = this.$matrix.m22;
239 J3DIMatrix4.setUniformArray[6] = this.$matrix.m23;
240 J3DIMatrix4.setUniformArray[7] = this.$matrix.m24;
241 J3DIMatrix4.setUniformArray[8] = this.$matrix.m31;
242 J3DIMatrix4.setUniformArray[9] = this.$matrix.m32;
243 J3DIMatrix4.setUniformArray[10] = this.$matrix.m33;
244 J3DIMatrix4.setUniformArray[11] = this.$matrix.m34;
245 J3DIMatrix4.setUniformArray[12] = this.$matrix.m41;
246 J3DIMatrix4.setUniformArray[13] = this.$matrix.m42;
247 J3DIMatrix4.setUniformArray[14] = this.$matrix.m43;
248 J3DIMatrix4.setUniformArray[15] = this.$matrix.m44;
258 this.$matrix.m11 = 1;
259 this.$matrix.m12 = 0;
260 this.$matrix.m13 = 0;
261 this.$matrix.m14 = 0;
263 this.$matrix.m21 = 0;
264 this.$matrix.m22 = 1;
265 this.$matrix.m23 = 0;
266 this.$matrix.m24 = 0;
268 this.$matrix.m31 = 0;
269 this.$matrix.m32 = 0;
270 this.$matrix.m33 = 1;
271 this.$matrix.m34 = 0;
273 this.$matrix.m41 = 0;
274 this.$matrix.m42 = 0;
275 this.$matrix.m43 = 0;
276 this.$matrix.m44 = 1;
281 var tmp = this.$matrix.m12;
282 this.$matrix.m12 = this.$matrix.m21;
283 this.$matrix.m21 = tmp;
285 tmp = this.$matrix.m13;
286 this.$matrix.m13 = this.$matrix.m31;
287 this.$matrix.m31 = tmp;
289 tmp = this.$matrix.m14;
290 this.$matrix.m14 = this.$matrix.m41;
291 this.$matrix.m41 = tmp;
293 tmp = this.$matrix.m23;
294 this.$matrix.m23 = this.$matrix.m32;
295 this.$matrix.m32 = tmp;
297 tmp = this.$matrix.m24;
298 this.$matrix.m24 = this.$matrix.m42;
299 this.$matrix.m42 = tmp;
301 tmp = this.$matrix.m34;
302 this.$matrix.m34 = this.$matrix.m43;
303 this.$matrix.m43 = tmp;
309 this.$matrix = this.$matrix.inverse();
315 // then the inverse matrix is not unique.
323 // Scale the adjoint matrix to get the inverse
324 this.$matrix.m11 /= det;
325 this.$matrix.m12 /= det;
326 this.$matrix.m13 /= det;
327 this.$matrix.m14 /= det;
329 this.$matrix.m21 /= det;
330 this.$matrix.m22 /= det;
331 this.$matrix.m23 /= det;
332 this.$matrix.m24 /= det;
334 this.$matrix.m31 /= det;
335 this.$matrix.m32 /= det;
336 this.$matrix.m33 /= det;
337 this.$matrix.m34 /= det;
339 this.$matrix.m41 /= det;
340 this.$matrix.m42 /= det;
341 this.$matrix.m43 /= det;
342 this.$matrix.m44 /= det;
363 this.$matrix = this.$matrix.translate(x, y, z);
367 var matrix = new J3DIMatrix4();
368 matrix.$matrix.m41 = x;
369 matrix.$matrix.m42 = y;
370 matrix.$matrix.m43 = z;
372 this.multiply(matrix);
399 this.$matrix = this.$matrix.scale(x, y, z);
403 var matrix = new J3DIMatrix4();
404 matrix.$matrix.m11 = x;
405 matrix.$matrix.m22 = y;
406 matrix.$matrix.m33 = z;
408 this.multiply(matrix);
435 this.$matrix = this.$matrix.rotateAxisAngle(x, y, z, angle);
464 mat.$matrix.m11 = 1;
465 mat.$matrix.m12 = 0;
466 mat.$matrix.m13 = 0;
467 mat.$matrix.m21 = 0;
468 matrix.m22 = 1 - 2 * sinA2;
469 mat.$matrix.m23 = 2 * sinA * cosA;
470 mat.$matrix.m31 = 0;
471 mat.$matrix.m32 = -2 * sinA * cosA;
472 mat.$matrix.m33 = 1 - 2 * sinA2;
473 mat.$matrix.m14 = mat.$matrix.m24 = mat.$matrix.m34 = 0;
474 mat.$matrix.m41 = mat.$matrix.m42 = mat.$matrix.m43 = 0;
475 mat.$matrix.m44 = 1;
477 mat.$matrix.m11 = 1 - 2 * sinA2;
478 mat.$matrix.m12 = 0;
479 mat.$matrix.m13 = -2 * sinA * cosA;
480 mat.$matrix.m21 = 0;
481 mat.$matrix.m22 = 1;
482 mat.$matrix.m23 = 0;
483 mat.$matrix.m31 = 2 * sinA * cosA;
484 mat.$matrix.m32 = 0;
485 mat.$matrix.m33 = 1 - 2 * sinA2;
486 mat.$matrix.m14 = mat.$matrix.m24 = mat.$matrix.m34 = 0;
487 mat.$matrix.m41 = mat.$matrix.m42 = mat.$matrix.m43 = 0;
488 mat.$matrix.m44 = 1;
490 mat.$matrix.m11 = 1 - 2 * sinA2;
491 mat.$matrix.m12 = 2 * sinA * cosA;
492 mat.$matrix.m13 = 0;
493 mat.$matrix.m21 = -2 * sinA * cosA;
494 mat.$matrix.m22 = 1 - 2 * sinA2;
495 mat.$matrix.m23 = 0;
496 mat.$matrix.m31 = 0;
497 mat.$matrix.m32 = 0;
498 mat.$matrix.m33 = 1;
499 mat.$matrix.m14 = mat.$matrix.m24 = mat.$matrix.m34 = 0;
500 mat.$matrix.m41 = mat.$matrix.m42 = mat.$matrix.m43 = 0;
501 mat.$matrix.m44 = 1;
507 mat.$matrix.m11 = 1 - 2 * (y2 + z2) * sinA2;
508 mat.$matrix.m12 = 2 * (x * y * sinA2 + z * sinA * cosA);
509 mat.$matrix.m13 = 2 * (x * z * sinA2 - y * sinA * cosA);
510 mat.$matrix.m21 = 2 * (y * x * sinA2 - z * sinA * cosA);
511 mat.$matrix.m22 = 1 - 2 * (z2 + x2) * sinA2;
512 mat.$matrix.m23 = 2 * (y * z * sinA2 + x * sinA * cosA);
513 mat.$matrix.m31 = 2 * (z * x * sinA2 + y * sinA * cosA);
514 mat.$matrix.m32 = 2 * (z * y * sinA2 - x * sinA * cosA);
515 mat.$matrix.m33 = 1 - 2 * (x2 + y2) * sinA2;
516 mat.$matrix.m14 = mat.$matrix.m24 = mat.$matrix.m34 = 0;
517 mat.$matrix.m41 = mat.$matrix.m42 = mat.$matrix.m43 = 0;
518 mat.$matrix.m44 = 1;
526 this.$matrix = this.$matrix.multiply(mat.$matrix);
530 var m11 = (mat.$matrix.m11 * this.$matrix.m11 + mat.$matrix.m12 * this.$matrix.m21
531 + mat.$matrix.m13 * this.$matrix.m31 + mat.$matrix.m14 * this.$matrix.m41);
532 var m12 = (mat.$matrix.m11 * this.$matrix.m12 + mat.$matrix.m12 * this.$matrix.m22
533 + mat.$matrix.m13 * this.$matrix.m32 + mat.$matrix.m14 * this.$matrix.m42);
534 var m13 = (mat.$matrix.m11 * this.$matrix.m13 + mat.$matrix.m12 * this.$matrix.m23
535 + mat.$matrix.m13 * this.$matrix.m33 + mat.$matrix.m14 * this.$matrix.m43);
536 var m14 = (mat.$matrix.m11 * this.$matrix.m14 + mat.$matrix.m12 * this.$matrix.m24
537 + mat.$matrix.m13 * this.$matrix.m34 + mat.$matrix.m14 * this.$matrix.m44);
539 var m21 = (mat.$matrix.m21 * this.$matrix.m11 + mat.$matrix.m22 * this.$matrix.m21
540 + mat.$matrix.m23 * this.$matrix.m31 + mat.$matrix.m24 * this.$matrix.m41);
541 var m22 = (mat.$matrix.m21 * this.$matrix.m12 + mat.$matrix.m22 * this.$matrix.m22
542 + mat.$matrix.m23 * this.$matrix.m32 + mat.$matrix.m24 * this.$matrix.m42);
543 var m23 = (mat.$matrix.m21 * this.$matrix.m13 + mat.$matrix.m22 * this.$matrix.m23
544 + mat.$matrix.m23 * this.$matrix.m33 + mat.$matrix.m24 * this.$matrix.m43);
545 var m24 = (mat.$matrix.m21 * this.$matrix.m14 + mat.$matrix.m22 * this.$matrix.m24
546 + mat.$matrix.m23 * this.$matrix.m34 + mat.$matrix.m24 * this.$matrix.m44);
548 var m31 = (mat.$matrix.m31 * this.$matrix.m11 + mat.$matrix.m32 * this.$matrix.m21
549 + mat.$matrix.m33 * this.$matrix.m31 + mat.$matrix.m34 * this.$matrix.m41);
550 var m32 = (mat.$matrix.m31 * this.$matrix.m12 + mat.$matrix.m32 * this.$matrix.m22
551 + mat.$matrix.m33 * this.$matrix.m32 + mat.$matrix.m34 * this.$matrix.m42);
552 var m33 = (mat.$matrix.m31 * this.$matrix.m13 + mat.$matrix.m32 * this.$matrix.m23
553 + mat.$matrix.m33 * this.$matrix.m33 + mat.$matrix.m34 * this.$matrix.m43);
554 var m34 = (mat.$matrix.m31 * this.$matrix.m14 + mat.$matrix.m32 * this.$matrix.m24
555 + mat.$matrix.m33 * this.$matrix.m34 + mat.$matrix.m34 * this.$matrix.m44);
557 var m41 = (mat.$matrix.m41 * this.$matrix.m11 + mat.$matrix.m42 * this.$matrix.m21
558 + mat.$matrix.m43 * this.$matrix.m31 + mat.$matrix.m44 * this.$matrix.m41);
559 var m42 = (mat.$matrix.m41 * this.$matrix.m12 + mat.$matrix.m42 * this.$matrix.m22
560 + mat.$matrix.m43 * this.$matrix.m32 + mat.$matrix.m44 * this.$matrix.m42);
561 var m43 = (mat.$matrix.m41 * this.$matrix.m13 + mat.$matrix.m42 * this.$matrix.m23
562 + mat.$matrix.m43 * this.$matrix.m33 + mat.$matrix.m44 * this.$matrix.m43);
563 var m44 = (mat.$matrix.m41 * this.$matrix.m14 + mat.$matrix.m42 * this.$matrix.m24
564 + mat.$matrix.m43 * this.$matrix.m34 + mat.$matrix.m44 * this.$matrix.m44);
566 this.$matrix.m11 = m11;
567 this.$matrix.m12 = m12;
568 this.$matrix.m13 = m13;
569 this.$matrix.m14 = m14;
571 this.$matrix.m21 = m21;
572 this.$matrix.m22 = m22;
573 this.$matrix.m23 = m23;
574 this.$matrix.m24 = m24;
576 this.$matrix.m31 = m31;
577 this.$matrix.m32 = m32;
578 this.$matrix.m33 = m33;
579 this.$matrix.m34 = m34;
581 this.$matrix.m41 = m41;
582 this.$matrix.m42 = m42;
583 this.$matrix.m43 = m43;
584 this.$matrix.m44 = m44;
589 this.$matrix.m11 /= divisor;
590 this.$matrix.m12 /= divisor;
591 this.$matrix.m13 /= divisor;
592 this.$matrix.m14 /= divisor;
594 this.$matrix.m21 /= divisor;
595 this.$matrix.m22 /= divisor;
596 this.$matrix.m23 /= divisor;
597 this.$matrix.m24 /= divisor;
599 this.$matrix.m31 /= divisor;
600 this.$matrix.m32 /= divisor;
601 this.$matrix.m33 /= divisor;
602 this.$matrix.m34 /= divisor;
604 this.$matrix.m41 /= divisor;
605 this.$matrix.m42 /= divisor;
606 this.$matrix.m43 /= divisor;
607 this.$matrix.m44 /= divisor;
617 var matrix = new J3DIMatrix4();
618 matrix.$matrix.m11 = 2 / (left - right);
619 matrix.$matrix.m12 = 0;
620 matrix.$matrix.m13 = 0;
621 matrix.$matrix.m14 = 0;
622 matrix.$matrix.m21 = 0;
623 matrix.$matrix.m22 = 2 / (top - bottom);
624 matrix.$matrix.m23 = 0;
625 matrix.$matrix.m24 = 0;
626 matrix.$matrix.m31 = 0;
627 matrix.$matrix.m32 = 0;
628 matrix.$matrix.m33 = -2 / (far - near);
629 matrix.$matrix.m34 = 0;
630 matrix.$matrix.m41 = tx;
631 matrix.$matrix.m42 = ty;
632 matrix.$matrix.m43 = tz;
633 matrix.$matrix.m44 = 1;
635 this.multiply(matrix);
640 var matrix = new J3DIMatrix4();
646 matrix.$matrix.m11 = (2 * near) / (right - left);
647 matrix.$matrix.m12 = 0;
648 matrix.$matrix.m13 = 0;
649 matrix.$matrix.m14 = 0;
651 matrix.$matrix.m21 = 0;
652 matrix.$matrix.m22 = 2 * near / (top - bottom);
653 matrix.$matrix.m23 = 0;
654 matrix.$matrix.m24 = 0;
656 matrix.$matrix.m31 = A;
657 matrix.$matrix.m32 = B;
658 matrix.$matrix.m33 = C;
659 matrix.$matrix.m34 = -1;
661 matrix.$matrix.m41 = 0;
662 matrix.$matrix.m42 = 0;
663 matrix.$matrix.m43 = D;
664 matrix.$matrix.m44 = 0;
666 this.multiply(matrix);
697 var matrix = new J3DIMatrix4();
699 // Make rotation matrix
744 matrix.$matrix.m11 = xx;
745 matrix.$matrix.m12 = xy;
746 matrix.$matrix.m13 = xz;
747 matrix.$matrix.m14 = 0;
749 matrix.$matrix.m21 = yx;
750 matrix.$matrix.m22 = yy;
751 matrix.$matrix.m23 = yz;
752 matrix.$matrix.m24 = 0;
754 matrix.$matrix.m31 = zx;
755 matrix.$matrix.m32 = zy;
756 matrix.$matrix.m33 = zz;
757 matrix.$matrix.m34 = 0;
759 matrix.$matrix.m41 = 0;
760 matrix.$matrix.m42 = 0;
761 matrix.$matrix.m43 = 0;
762 matrix.$matrix.m44 = 1;
763 matrix.translate(-eyex, -eyey, -eyez);
765 this.multiply(matrix);
771 // Normalize the matrix.
772 if (this.$matrix.m44 == 0)
784 var matrix = new J3DIMatrix4(this);
786 matrix.divide(matrix.$matrix.m44);
790 var perspectiveMatrix = new J3DIMatrix4(matrix);
792 perspectiveMatrix.$matrix.m14 = 0;
793 perspectiveMatrix.$matrix.m24 = 0;
794 perspectiveMatrix.$matrix.m34 = 0;
795 perspectiveMatrix.$matrix.m44 = 1;
801 if (matrix.$matrix.m14 != 0 || matrix.$matrix.m24 != 0 || matrix.$matrix.m34 != 0) {
803 var rightHandSide = [ matrix.$matrix.m14, matrix.$matrix.m24, matrix.$matrix.m34, matrix.$matrix.m44 ];
814 matrix.$matrix.m14 = matrix.$matrix.m24 = matrix.$matrix.m34 = 0
815 matrix.$matrix.m44 = 1;
824 translate[0] = matrix.$matrix.m41
825 matrix.$matrix.m41 = 0
826 translate[1] = matrix.$matrix.m42
827 matrix.$matrix.m42 = 0
828 translate[2] = matrix.$matrix.m43
829 matrix.$matrix.m43 = 0
832 var row0 = new J3DIVector3(matrix.$matrix.m11, matrix.$matrix.m12, matrix.$matrix.m13);
833 var row1 = new J3DIVector3(matrix.$matrix.m21, matrix.$matrix.m22, matrix.$matrix.m23);
834 var row2 = new J3DIVector3(matrix.$matrix.m31, matrix.$matrix.m32, matrix.$matrix.m33);
861 // At this point, the matrix (in rows) is orthonormal.
863 // is -1, then negate the matrix and the scaling factors.
909 var a1 = this.$matrix.m11;
910 var b1 = this.$matrix.m12;
911 var c1 = this.$matrix.m13;
912 var d1 = this.$matrix.m14;
914 var a2 = this.$matrix.m21;
915 var b2 = this.$matrix.m22;
916 var c2 = this.$matrix.m23;
917 var d2 = this.$matrix.m24;
919 var a3 = this.$matrix.m31;
920 var b3 = this.$matrix.m32;
921 var c3 = this.$matrix.m33;
922 var d3 = this.$matrix.m34;
924 var a4 = this.$matrix.m41;
925 var b4 = this.$matrix.m42;
926 var c4 = this.$matrix.m43;
927 var d4 = this.$matrix.m44;
937 var a1 = this.$matrix.m11;
938 var b1 = this.$matrix.m12;
939 var c1 = this.$matrix.m13;
940 var d1 = this.$matrix.m14;
942 var a2 = this.$matrix.m21;
943 var b2 = this.$matrix.m22;
944 var c2 = this.$matrix.m23;
945 var d2 = this.$matrix.m24;
947 var a3 = this.$matrix.m31;
948 var b3 = this.$matrix.m32;
949 var c3 = this.$matrix.m33;
950 var d3 = this.$matrix.m34;
952 matrix.m41;
953 var b4 = this.$matrix.m42;
954 var c4 = this.$matrix.m43;
955 var d4 = this.$matrix.m44;
958 this.$matrix.m11 = this._determinant3x3(b2, b3, b4, c2, c3, c4, d2, d3, d4);
959 this.$matrix.m21 = - this._determinant3x3(a2, a3, a4, c2, c3, c4, d2, d3, d4);
960 this.$matrix.m31 = this._determinant3x3(a2, a3, a4, b2, b3, b4, d2, d3, d4);
961 this.$matrix.m41 = - this._determinant3x3(a2, a3, a4, b2, b3, b4, c2, c3, c4);
963 this.$matrix.m12 = - this._determinant3x3(b1, b3, b4, c1, c3, c4, d1, d3, d4);
964 this.$matrix.m22 = this._determinant3x3(a1, a3, a4, c1, c3, c4, d1, d3, d4);
965 this.$matrix.m32 = - this._determinant3x3(a1, a3, a4, b1, b3, b4, d1, d3, d4);
966 this.$matrix.m42 = this._determinant3x3(a1, a3, a4, b1, b3, b4, c1, c3, c4);
968 this.$matrix.m13 = this._determinant3x3(b1, b2, b4, c1, c2, c4, d1, d2, d4);
969 this.$matrix.m23 = - this._determinant3x3(a1, a2, a4, c1, c2, c4, d1, d2, d4);
970 this.$matrix.m33 = this._determinant3x3(a1, a2, a4, b1, b2, b4, d1, d2, d4);
971 this.$matrix.m43 = - this._determinant3x3(a1, a2, a4, b1, b2, b4, c1, c2, c4);
973 this.$matrix.m14 = - this._determinant3x3(b1, b2, b3, c1, c2, c3, d1, d2, d3);
974 this.$matrix.m24 = this._determinant3x3(a1, a2, a3, c1, c2, c3, d1, d2, d3);
975 this.$matrix.m34 = - this._determinant3x3(a1, a2, a3, b1, b2, b3, d1, d2, d3);
976 this.$matrix.m44 = this._determinant3x3(a1, a2, a3, b1, b2, b3, c1, c2, c3);
1045 J3DIVector3.prototype.multVecMatrix = function(matrix)
1051 this[0] = matrix.$matrix.m41 + x * matrix.$matrix.m11 + y * matrix.$matrix.m21 + z * matrix.$matrix.m31;
1052 this[1] = matrix.$matrix.m42 + x * matrix.$matrix.m12 + y * matrix.$matrix.m22 + z * matrix.$matrix.m32;
1053 this[2] = matrix.$matrix.m43 + x * matrix.$matrix.m13 + y * matrix.$matrix.m23 + z * matrix.$matrix.m33;
1054 var w = matrix.$matrix.m44 + x * matrix.$matrix.m14 + y * matrix.$matrix.m24 + z * matrix.$matrix.m34;