1.2.0 • Published 6 years ago

gl-mat4 v1.2.0

Weekly downloads
103,929
License
Zlib
Repository
github
Last release
6 years ago

gl-mat4 stable

Part of a fork of @toji's gl-matrix split into smaller pieces: this package contains glMatrix.mat4.

Usage

NPM

mat4 = require('gl-mat4')

Will load all of the module's functionality and expose it on a single object. Note that any of the methods may also be required directly from their files.

For example, the following are equivalent:

var scale = require('gl-mat4').scale
var scale = require('gl-mat4/scale')

API

adjoint(out:mat4, a:mat4)

Calculates the adjugate of a mat4

clone(a:mat4)

Creates a new mat4 initialized with values from an existing matrix

copy(out:mat4, a:mat4)

Copy the values from one mat4 to another

create()

Creates a new identity mat4

determinant(a:mat4)

Calculates the determinant of a mat4

fromQuat(out:mat4, q:quat4)

Creates a matrix from a quaternion rotation.

fromRotation(out:mat4, rad:number, axis:vec3)

Creates a matrix from a given angle around a given axis This is equivalent to (but much faster than):

  mat4.identity(dest);
  mat4.rotate(dest, dest, rad, axis);

fromRotationTranslation(out:mat4, q:quat4, v:vec3)

Creates a matrix from a quaternion rotation and vector translation. This is equivalent to (but much faster than):

  mat4.identity(dest);
  mat4.translate(dest, vec);
  var quatMat = mat4.create();
  quat4.toMat4(quat, quatMat);
  mat4.multiply(dest, quatMat);

fromScaling(out:mat4, v:vec3)

Creates a matrix from a vector scaling. This is equivalent to (but much faster than):

  mat4.identity(dest);
  mat4.translate(dest, dest, vec);

fromTranslation(out:mat4, v:vec3)

Creates a matrix from a vector translation. This is equivalent to (but much faster than):

  mat4.identity(dest);
  mat4.translate(dest, dest, vec);

fromTranslation(out:mat4, v:vec3)

Creates a matrix from a vector translation This is equivalent to (but much faster than):

  mat4.identity(dest);
  mat4.translate(dest, dest, vec);

fromXRotation(out:mat4, rad:Number)

Creates a matrix from the given angle around the X axis This is equivalent to (but much faster than):

  mat4.identity(dest)
  mat4.rotateX(dest, dest, rad)

fromYRotation(out:mat4, rad:Number)

Creates a matrix from the given angle around the Y axis This is equivalent to (but much faster than):

  mat4.identity(dest)
  mat4.rotateY(dest, dest, rad)

fromZRotation(out:mat4, rad:Number)

Creates a matrix from the given angle around the Z axis This is equivalent to (but much faster than):

  mat4.identity(dest)
  mat4.rotateZ(dest, dest, rad)

frustum(out:mat4, left:Number, right:Number, bottom:Number, top:Number, near:Number, far:Number)

Generates a frustum matrix with the given bounds

identity(out:mat4)

Set a mat4 to the identity matrix

invert(out:mat4, a:mat4)

Inverts a mat4

lookAt(out:mat4, eye:vec3, center:vec3, up:vec3)

Generates a look-at matrix with the given eye position, focal point, and up axis

multiply(out:mat4, a:mat4, b:mat4)

Multiplies two mat4's

ortho(out:mat4, left:number, right:number, bottom:number, top:number, near:number, far:number)

Generates a orthogonal projection matrix with the given bounds

perspective(out:mat4, fovy:number, aspect:number, near:number, far:number)

Generates a perspective projection matrix with the given bounds

perspectiveFromFieldOfView(out:mat4, fov:object, near:number, far:number)

Generates a perspective projection matrix with the given field of view.

rotate(out:mat4, a:mat4, rad:Number, axis:vec3)

Rotates a mat4 by the given angle

rotateX(out:mat4, a:mat4, rad:Number)

Rotates a matrix by the given angle around the X axis

rotateY(out:mat4, a:mat4, rad:Number)

Rotates a matrix by the given angle around the Y axis

rotateZ(out:mat4, a:mat4, rad:Number)

Rotates a matrix by the given angle around the Z axis

scale(out:mat4, a:mat4, v:vec3)

Scales the mat4 by the dimensions in the given vec3

str(mat:mat4)

Returns a string representation of a mat4

translate(out:mat4, a:mat4, v:vec3)

Translate a mat4 by the given vector

transpose(out:mat4, a:mat4)

Transpose the values of a mat4

License

zlib. See LICENSE.md for details.

pddgz-tangram@everything-registry/sub-chunk-1768@jwc/csg-viewercamera-spin@giangtong/plotly.js@giliweb/plotly.js@extrawallet/logoclustergrammer-glclustergrammer-gl.jsclustergrammer2-alpha@expo/trippycollada-dae-parser@infinitebrahmanuniverse/nolb-gl-@jscad/regl-renderercolumn-mesh@jwc/jscad2-regl-renderer@kaosat-dev/jscad-regl-helpers@dhilt/plotly.js@crunchr/plotly.jsaxis3daxis3d-orbit-camera@hfribeiro/ska-plotly@gumuslab/clustergrammer@hoangho1147/hoang-sankey-plotlychange-mat4-coordinate-system@gnucoop/tangramcss-transform-to-mat4css-mat4@muros-ct/plotly.js@newcrom/plotly.js@newton-ued/newmask-logodashbot_plotly.jsmetamask-logomeshviewmatrix-camera-controllermeetyogi-graph-vislocal-bone-to-world-boneload-wavefront-objload-collada-daelookat-cameramat4-decomposemat4-interpolatemat4-interpolatormat4-recomposemapbox-gl-cameramapymapy_js_sdkmapy_sdkkpmp-custom-plotly.jskindred-nodekindred-rendererkindred-turntable-cameranwt-geojsobsceneperspective-cameraphysics-rendererorbiterorbit-camera-controllerorthographic-camerapnp-guipoc-gl-spritesplotly-with-max-legend-heightplotly.jsplotly.js-cartesian-esmplotly.js-esmplotly.js-fix2plotly.js-with-localesthree-sdf-texttangramscene-treestandardwallet-logoreact-chartsjsreact-f1primitive-sphereregl-modelregl-cameraregl-stereoregl-vrregl-inertia-cameraturntable-cameraturntable-camera-controlleruni3dvirtual_art_galleryviettest1111.jsvoxel-decalsvoxel-shadervoxel-meshervoxel-outlinevoxltween-css-transformvoxel-vrvoxel-wireframex3p.jsfirst-person-camera@nfactorial/webgl_displayfontpath-glfolio-lamp-geometry@pathicles/core@pathicles/viewereye-vector
1.2.0

6 years ago

1.1.4

9 years ago

1.1.3

9 years ago

1.1.2

9 years ago

1.1.1

9 years ago

1.1.0

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

10 years ago