Skip to content

Instantly share code, notes, and snippets.

@CodeDmitry
Forked from rolandoam/glMatrix-0.9.5.js
Created September 21, 2017 03:33
Show Gist options
  • Select an option

  • Save CodeDmitry/e7eb0626bef773ef9c387d4384decf51 to your computer and use it in GitHub Desktop.

Select an option

Save CodeDmitry/e7eb0626bef773ef9c387d4384decf51 to your computer and use it in GitHub Desktop.

Revisions

  1. Rolando Abarca revised this gist Oct 8, 2011. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion glMatrix-1.0.0.js
    Original file line number Diff line number Diff line change
    @@ -336,4 +336,4 @@ quat4.slerp = function(quat, quat2, slerp, dest) {};
    * @param {quat4} quat
    * @return {string}
    */
    quat4.multiply = function(quat) {};
    quat4.str = function(quat) {};
  2. Rolando Abarca revised this gist Oct 8, 2011. 1 changed file with 17 additions and 7 deletions.
    24 changes: 17 additions & 7 deletions glMatrix-1.0.0.js
    Original file line number Diff line number Diff line change
    @@ -21,6 +21,16 @@
    * @externs
    */

    /** @typedef {Object.<number,number>} */
    var vec2;

    /**
    * @constructor
    * @param {vec2=} vec
    * @return {vec2}
    */
    vec2.create = function (vec) {};

    /** @typedef {Object.<number,number>} */
    var vec3;

    @@ -259,28 +269,28 @@ var quat4 = {};

    /**
    * @param {quat4=} quat
    * @return {quat}
    * @return {quat4}
    */
    quat4.create = function(quat) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.set = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.calculateW = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.inverse = function(quat, dest) {};

    @@ -293,15 +303,15 @@ quat4.length = function(quat, dest) {};
    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.normalize = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4} quat2
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.multiply = function(quat, quat2, dest) {};

    @@ -318,7 +328,7 @@ quat4.multiplyVec3 = function(quat, vec, dest) {};
    * @param {quat4} quat2
    * @param {number} slerp
    * @param {quat4=} dest
    * @return {quat}
    * @return {quat4}
    */
    quat4.slerp = function(quat, quat2, slerp, dest) {};

  3. Rolando Abarca revised this gist Oct 8, 2011. 1 changed file with 74 additions and 0 deletions.
    74 changes: 74 additions & 0 deletions glMatrix-1.0.0.js
    Original file line number Diff line number Diff line change
    @@ -253,3 +253,77 @@ mat4.ortho = function(left, right, bottom, top, near, far, dest) {};
    * @return {mat4}
    */
    mat4.lookAt = function(eye, center, up, dest) {};

    /** @typedef {Object.<number,number>} */
    var quat4 = {};

    /**
    * @param {quat4=} quat
    * @return {quat}
    */
    quat4.create = function(quat) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.set = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.calculateW = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.inverse = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @return {number}
    */
    quat4.length = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.normalize = function(quat, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4} quat2
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.multiply = function(quat, quat2, dest) {};

    /**
    * @param {quat4} quat
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    quat4.multiplyVec3 = function(quat, vec, dest) {};

    /**
    * @param {quat4} quat
    * @param {quat4} quat2
    * @param {number} slerp
    * @param {quat4=} dest
    * @return {quat}
    */
    quat4.slerp = function(quat, quat2, slerp, dest) {};

    /**
    * @param {quat4} quat
    * @return {string}
    */
    quat4.multiply = function(quat) {};
  4. Rolando Abarca revised this gist Oct 8, 2011. 1 changed file with 255 additions and 0 deletions.
    255 changes: 255 additions & 0 deletions glMatrix-1.0.0.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,255 @@
    /*
    * Copyright 2011 Rolando Abarca.
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
    * You may obtain a copy of the License at
    *
    * http://www.apache.org/licenses/LICENSE-2.0
    *
    * Unless required by applicable law or agreed to in writing, software
    * distributed under the License is distributed on an "AS IS" BASIS,
    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    * See the License for the specific language governing permissions and
    * limitations under the License.
    */

    /**
    * @fileoverview Externs for glMatrix 1.0.0
    *
    * @see http://code.google.com/p/glmatrix/
    * @externs
    */

    /** @typedef {Object.<number,number>} */
    var vec3;

    /**
    * @constructor
    * @param {vec3=} vec
    * @return {vec3}
    */
    vec3.create = function(vec) {};

    /**
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.set = function(vec, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.add = function(vec, vec2, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.subtract = function(vec, vec2, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.negate = function(vec, dest) {};

    /**
    * @param {vec3} vec
    * @param {number} val
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.scale = function(vec, val, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.normalize = function(vec, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.cross = function(vec, vec2, dest) {};

    /**
    * @param {vec3} vec
    * @return {number}
    */
    vec3.length = function(vec) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @return {number}
    */
    vec3.dot = function(vec, vec2) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.direction = function(vec, vec2, dest) {};

    /**
    * @param {vec3} vec
    * @param {vec3} vec2
    * @param {number} lerp
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.lerp = function(vec, vec2, lerp, dest) {};

    /**
    * @param {vec3} vec
    * @return {string}
    */
    vec3.str = function(vec) {};

    /** @typedef {Object.<number,number>} */
    var mat4 = {};

    /**
    * @constructor
    * @param {mat4=} mat
    * @return {mat4}
    */
    mat4.create = function(mat) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.set = function(mat, dest) {};

    /**
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.identity = function(dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.transpose = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @return {number}
    */
    mat4.determinant = function(mat) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.inverse = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.toRotationMat = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4} mat2
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.multiply = function(mat, mat2, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    mat4.multiplyVec3 = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.translate = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.scale = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {number} angle
    * @param {vec3} axis
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.rotate = function(mat, angle, axis, dest) {};

    /**
    * @param {number} left
    * @param {number} right
    * @param {number} bottom
    * @param {number} top
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.frustum = function(left, right, bottom, top, near, far, dest) {};

    /**
    * @param {number} fovy
    * @param {number} aspect
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.perspective = function(fovy, aspect, near, far, dest) {};

    /**
    * @param {number} left
    * @param {number} right
    * @param {number} bottom
    * @param {number} top
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.ortho = function(left, right, bottom, top, near, far, dest) {};

    /**
    * @param {vec3} eye
    * @param {vec3} center
    * @param {vec3} up
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.lookAt = function(eye, center, up, dest) {};
  5. Rolando Abarca created this gist Sep 28, 2011.
    173 changes: 173 additions & 0 deletions glMatrix-0.9.5.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,173 @@
    /*
    * Copyright 2011 Rolando Abarca.
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
    * You may obtain a copy of the License at
    *
    * http://www.apache.org/licenses/LICENSE-2.0
    *
    * Unless required by applicable law or agreed to in writing, software
    * distributed under the License is distributed on an "AS IS" BASIS,
    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    * See the License for the specific language governing permissions and
    * limitations under the License.
    */

    /**
    * @fileoverview Externs for glMatrix 0.9.5
    *
    * @see http://code.google.com/p/glmatrix/
    * @externs
    */

    /** @typedef {Object.<number,number>} */
    var vec3;

    /**
    * @constructor
    * @param {vec3=} vec
    * @return {vec3}
    */
    vec3.create = function(vec) {};

    /**
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    vec3.set = function(vec, dest) {};

    /** @typedef {Object.<number,number>} */
    var mat4 = {};

    /**
    * @constructor
    * @param {mat4=} mat
    * @return {mat4}
    */
    mat4.create = function(mat) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.set = function(mat, dest) {};

    /**
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.identity = function(dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.transpose = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @return {number}
    */
    mat4.determinant = function(mat) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.inverse = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.toRotationMat = function(mat, dest) {};

    /**
    * @param {mat4} mat
    * @param {mat4} mat2
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.multiply = function(mat, mat2, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {vec3=} dest
    * @return {vec3}
    */
    mat4.multiplyVec3 = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.translate = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {vec3} vec
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.scale = function(mat, vec, dest) {};

    /**
    * @param {mat4} mat
    * @param {number} angle
    * @param {vec3} axis
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.rotate = function(mat, angle, axis, dest) {};

    /**
    * @param {number} left
    * @param {number} right
    * @param {number} bottom
    * @param {number} top
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.frustum = function(left, right, bottom, top, near, far, dest) {};

    /**
    * @param {number} fovy
    * @param {number} aspect
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.perspective = function(fovy, aspect, near, far, dest) {};

    /**
    * @param {number} left
    * @param {number} right
    * @param {number} bottom
    * @param {number} top
    * @param {number} near
    * @param {number} far
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.ortho = function(left, right, bottom, top, near, far, dest) {};

    /**
    * @param {vec3} eye
    * @param {vec3} center
    * @param {vec3} up
    * @param {mat4=} dest
    * @return {mat4}
    */
    mat4.lookAt = function(eye, center, up, dest) {};