@@ -797,7 +797,7 @@ Elm.Native.MJS.make = function(elm) {
797797 };
798798
799799 /*
800− * Function: M4x4.makeOrtho
800+ * Function: M4x4.makeOrtho2D
801801 *
802802 * Creates a matrix for a 2D orthogonal frustum projection with the given parameters.
803803 * znear and zfar are assumed to be -1 and 1, respectively.
@@ -900,79 +900,6 @@ Elm.Native.MJS.make = function(elm) {
900900 return r;
901901 };
902902
903− /*
904− * Function: M4x4.mulOffset
905− *
906− * Performs r' = a * b, where r' is the 16 elements of r starting at element o.
907− *
908− * Parameters:
909− *
910− * a - the first matrix operand
911− * b - the second matrix operand
912− * r - array to store the result in
913− * o - offset into r at which to start storing results
914− *
915− * Returns:
916− *
917− * r
918− */
919− M4x4.mulOffset = function M4x4_mulOffset(a, b, r, o) {
920− //MathUtils_assert(a.length == 16, "a.length == 16");
921− //MathUtils_assert(b.length == 16, "b.length == 16");
922−
923− var a21 = a[1];
924− var a31 = a[2];
925− var a41 = a[3];
926− var a12 = a[4];
927− var a22 = a[5];
928− var a32 = a[6];
929− var a42 = a[7];
930− var a13 = a[8];
931− var a23 = a[9];
932− var a33 = a[10];
933− var a43 = a[11];
934− var a14 = a[12];
935− var a24 = a[13];
936− var a34 = a[14];
937− var a44 = a[15];
938−
939− var b11 = b[0];
940− var b21 = b[1];
941− var b31 = b[2];
942− var b41 = b[3];
943− var b12 = b[4];
944− var b22 = b[5];
945− var b32 = b[6];
946− var b42 = b[7];
947− var b13 = b[8];
948− var b23 = b[9];
949− var b33 = b[10];
950− var b43 = b[11];
951− var b14 = b[12];
952− var b24 = b[13];
953− var b34 = b[14];
954− var b44 = b[15];
955−
956− r[o+0] = a11 * b11 + a12 * b21 + a13 * b31 + a14 * b41;
957− r[o+1] = a21 * b11 + a22 * b21 + a23 * b31 + a24 * b41;
958− r[o+2] = a31 * b11 + a32 * b21 + a33 * b31 + a34 * b41;
959− r[o+3] = a41 * b11 + a42 * b21 + a43 * b31 + a44 * b41;
960− r[o+4] = a11 * b12 + a12 * b22 + a13 * b32 + a14 * b42;
961− r[o+5] = a21 * b12 + a22 * b22 + a23 * b32 + a24 * b42;
962− r[o+6] = a31 * b12 + a32 * b22 + a33 * b32 + a34 * b42;
963− r[o+7] = a41 * b12 + a42 * b22 + a43 * b32 + a44 * b42;
964− r[o+8] = a11 * b13 + a12 * b23 + a13 * b33 + a14 * b43;
965− r[o+9] = a21 * b13 + a22 * b23 + a23 * b33 + a24 * b43;
966− r[o+10] = a31 * b13 + a32 * b23 + a33 * b33 + a34 * b43;
967− r[o+11] = a41 * b13 + a42 * b23 + a43 * b33 + a44 * b43;
968− r[o+12] = a11 * b14 + a12 * b24 + a13 * b34 + a14 * b44;
969− r[o+13] = a21 * b14 + a22 * b24 + a23 * b34 + a24 * b44;
970− r[o+14] = a31 * b14 + a32 * b24 + a33 * b34 + a34 * b44;
971− r[o+15] = a41 * b14 + a42 * b24 + a43 * b34 + a44 * b44;
972−
973− return r;
974− };
975−
976903 /*
977904 * Function: M4x4.mulAffine
978905 *
@@ -1043,74 +970,6 @@ Elm.Native.MJS.make = function(elm) {
1043970 return r;
1044971 };
1045972
1046− /*
1047− * Function: M4x4.mulAffineOffset
1048− *
1049− * Performs r' = a * b, assuming a and b are affine (elements 3,7,11,15 = 0,0,0,1), where r' is the 16 elements of r starting at element o
1050− *
1051− * Parameters:
1052− *
1053− * a - the first matrix operand
1054− * b - the second matrix operand
1055− * r - array to store the result in
1056− * o - offset into r at which to start storing results
1057− *
1058− * Returns:
1059− *
1060− * r
1061− */
1062− M4x4.mulAffine = function M4x4_mulAffine(a, b, r, o) {
1063− //MathUtils_assert(a.length == 16, "a.length == 16");
1064− //MathUtils_assert(b.length == 16, "b.length == 16");
1065−
1066− if (r == undefined)
1067− r = new MJS_FLOAT_ARRAY_TYPE(16);
1068− var a11 = a[0];
1069− var a21 = a[1];
1070− var a31 = a[2];
1071− var a12 = a[4];
1072− var a22 = a[5];
1073− var a32 = a[6];
1074− var a13 = a[8];
1075− var a23 = a[9];
1076− var a33 = a[10];
1077− var a14 = a[12];
1078− var a24 = a[13];
1079− var a34 = a[14];
1080−
1081− var b11 = b[0];
1082− var b21 = b[1];
1083− var b31 = b[2];
1084− var b12 = b[4];
1085− var b22 = b[5];
1086− var b32 = b[6];
1087− var b13 = b[8];
1088− var b23 = b[9];
1089− var b33 = b[10];
1090− var b14 = b[12];
1091− var b24 = b[13];
1092− var b34 = b[14];
1093−
1094− r[o+0] = a11 * b11 + a12 * b21 + a13 * b31;
1095− r[o+1] = a21 * b11 + a22 * b21 + a23 * b31;
1096− r[o+2] = a31 * b11 + a32 * b21 + a33 * b31;
1097− r[o+3] = 0;
1098− r[o+4] = a11 * b12 + a12 * b22 + a13 * b32;
1099− r[o+5] = a21 * b12 + a22 * b22 + a23 * b32;
1100− r[o+6] = a31 * b12 + a32 * b22 + a33 * b32;
1101− r[o+7] = 0;
1102− r[o+8] = a11 * b13 + a12 * b23 + a13 * b33;
1103− r[o+9] = a21 * b13 + a22 * b23 + a23 * b33;
1104− r[o+10] = a31 * b13 + a32 * b23 + a33 * b33;
1105− r[o+11] = 0;
1106− r[o+12] = a11 * b14 + a12 * b24 + a13 * b34 + a14;
1107− r[o+13] = a21 * b14 + a22 * b24 + a23 * b34 + a24;
1108− r[o+14] = a31 * b14 + a32 * b24 + a33 * b34 + a34;
1109− r[o+15] = 1;
1110−
1111− return r;
1112− };
1113−
1114973 /*
1115974 * Function: M4x4.makeRotate
1116975 *
@@ -1840,7 +1699,7 @@ Elm.Native.MJS.make = function(elm) {
18401699 return r;
18411700 };
18421701
1843− M4x4.makeCoords = function M4x4_makeCoords(vx,vy,vz) {
1702+ M4x4.makeBasis = function M4x4_makeBasis(vx,vy,vz) {
18441703
18451704 var r = new MJS_FLOAT_ARRAY_TYPE(16);
18461705
@@ -1868,7 +1727,6 @@ Elm.Native.MJS.make = function(elm) {
18681727 return {
18691728 V3: V3,
18701729 v3: F3(V3.$),
1871− v3clone: V3.clone,
18721730 v3add: F2(V3.add),
18731731 v3sub: F2(V3.sub),
18741732 v3neg: V3.neg,
@@ -1880,12 +1738,8 @@ Elm.Native.MJS.make = function(elm) {
18801738 v3dot: F2(V3.dot),
18811739 v3cross: F2(V3.cross),
18821740 v3mul4x4: F2(V3.mul4x4),
1883− /*
1884− m4x4: F16(M4x4.$),
1885− */
18861741 M4x4:M4x4,
18871742 m4x4identity: M4x4.identity,
1888− m4x4clone: M4x4.clone,
18891743 m4x4topLeft3x3: M4x4.topLeft3x3,
18901744 m4x4inverseOrthonormal: M4x4.inverseOrthonormal,
18911745 m4x4inverseTo3x3: M4x4.inverseTo3x3,
@@ -1901,23 +1755,15 @@ Elm.Native.MJS.make = function(elm) {
19011755 m4x4makeScale1: M4x4.makeScale1,
19021756 m4x4makeScale: M4x4.makeScale,
19031757 m4x4scale3: F4(M4x4.scale3),
1904− m4x4scale1: F2(M4x4.scale1),
19051758 m4x4scale: F2(M4x4.scale),
19061759 m4x4makeTranslate3: F3(M4x4.makeTranslate3),
1907− m4x4makeTranslate1: M4x4.makeTranslate1,
19081760 m4x4makeTranslate: M4x4.makeTranslate,
19091761 m4x4translate3: F4(M4x4.translate3),
1910− m4x4translate1: F2(M4x4.translate1),
19111762 m4x4translate: F2(M4x4.translate),
19121763 m4x4makeLookAt: F3(M4x4.makeLookAt),
19131764 m4x4transpose: M4x4.transpose,
19141765 m4x4transformPoint: F2(M4x4.transformPoint),
1915− /*
1916− m4x4_transformLine(m, v, r) {
1917− m4x4_transformPointFffine (m, v, r) {
1918− m4x4_transformLineFffine(m, v, r) {
1919− */
1920− m4x4makeCoords: F3(M4x4.makeCoords),
1766+ m4x4makeBasis: F3(M4x4.makeBasis),
19211767 };
19221768
19231769}