Methods
# (static) adjoint(out, a) → {mat4}
- Source:
Calculates the adjugate of a mat4
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the source matrix |
Returns:
out
- Type
- mat4
# (static) clone(a) → {mat4}
- Source:
Creates a new mat4 initialized with values from an existing matrix
Parameters:
Name | Type | Description |
---|---|---|
a |
mat4 | matrix to clone |
Returns:
a new 4x4 matrix
- Type
- mat4
# (static) copy(out, a) → {mat4}
- Source:
Copy the values from one mat4 to another
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the source matrix |
Returns:
out
- Type
- mat4
# (static) create() → {mat4}
- Source:
Creates a new identity mat4
Returns:
a new 4x4 matrix
- Type
- mat4
# (static) determinant(a) → {Number}
- Source:
Calculates the determinant of a mat4
Parameters:
Name | Type | Description |
---|---|---|
a |
mat4 | the source matrix |
Returns:
determinant of a
- Type
- Number
# (static) frob(a) → {Number}
- Source:
Returns Frobenius norm of a mat4
Parameters:
Name | Type | Description |
---|---|---|
a |
mat4 | the matrix to calculate Frobenius norm of |
Returns:
Frobenius norm
- Type
- Number
# (static) fromRotationTranslation(out, q, v) → {mat4}
- Source:
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);
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | mat4 receiving operation result |
q |
quat4 | Rotation quaternion |
v |
vec3 | Translation vector |
Returns:
out
- Type
- mat4
# (static) frustum(out, left, right, bottom, top, near, far) → {mat4}
- Source:
Generates a frustum matrix with the given bounds
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | mat4 frustum matrix will be written into |
left |
Number | Left bound of the frustum |
right |
Number | Right bound of the frustum |
bottom |
Number | Bottom bound of the frustum |
top |
Number | Top bound of the frustum |
near |
Number | Near bound of the frustum |
far |
Number | Far bound of the frustum |
Returns:
out
- Type
- mat4
# (static) identity(out) → {mat4}
- Source:
Set a mat4 to the identity matrix
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
Returns:
out
- Type
- mat4
# (static) invert(out, a) → {mat4}
- Source:
Inverts a mat4
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the source matrix |
Returns:
out
- Type
- mat4
# (static) lookAt(out, eye, center, up) → {mat4}
- Source:
Generates a look-at matrix with the given eye position, focal point, and up axis
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | mat4 frustum matrix will be written into |
eye |
vec3 | Position of the viewer |
center |
vec3 | Point the viewer is looking at |
up |
vec3 | vec3 pointing up |
Returns:
out
- Type
- mat4
# (static) mul()
- Source:
Alias for mat4.multiply
# (static) mulAffine()
- Source:
Alias for mat4.multiplyAffine
# (static) multiply(out, a, b) → {mat4}
- Source:
Multiplies two mat4's
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the first operand |
b |
mat4 | the second operand |
Returns:
out
- Type
- mat4
# (static) multiplyAffine(out, a, b) → {mat4}
- Source:
Multiplies two affine mat4's Add by https://github.com/pissang
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the first operand |
b |
mat4 | the second operand |
Returns:
out
- Type
- mat4
# (static) ortho(out, left, right, bottom, top, near, far) → {mat4}
- Source:
Generates a orthogonal projection matrix with the given bounds
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | mat4 frustum matrix will be written into |
left |
number | Left bound of the frustum |
right |
number | Right bound of the frustum |
bottom |
number | Bottom bound of the frustum |
top |
number | Top bound of the frustum |
near |
number | Near bound of the frustum |
far |
number | Far bound of the frustum |
Returns:
out
- Type
- mat4
# (static) perspective(out, fovy, aspect, near, far) → {mat4}
- Source:
Generates a perspective projection matrix with the given bounds
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | mat4 frustum matrix will be written into |
fovy |
number | Vertical field of view in radians |
aspect |
number | Aspect ratio. typically viewport width/height |
near |
number | Near bound of the frustum |
far |
number | Far bound of the frustum |
Returns:
out
- Type
- mat4
# (static) rotate(out, a, rad, axis) → {mat4}
- Source:
Rotates a mat4 by the given angle
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to rotate |
rad |
Number | the angle to rotate the matrix by |
axis |
vec3 | the axis to rotate around |
Returns:
out
- Type
- mat4
# (static) rotateX(out, a, rad) → {mat4}
- Source:
Rotates a matrix by the given angle around the X axis
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to rotate |
rad |
Number | the angle to rotate the matrix by |
Returns:
out
- Type
- mat4
# (static) rotateY(out, a, rad) → {mat4}
- Source:
Rotates a matrix by the given angle around the Y axis
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to rotate |
rad |
Number | the angle to rotate the matrix by |
Returns:
out
- Type
- mat4
# (static) rotateZ(out, a, rad) → {mat4}
- Source:
Rotates a matrix by the given angle around the Z axis
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to rotate |
rad |
Number | the angle to rotate the matrix by |
Returns:
out
- Type
- mat4
# (static) scale(out, a, v) → {mat4}
- Source:
Scales the mat4 by the dimensions in the given vec3
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to scale |
v |
vec3 | the vec3 to scale the matrix by |
Returns:
out
- Type
- mat4
# (static) translate(out, a, v) → {mat4}
- Source:
Translate a mat4 by the given vector
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the matrix to translate |
v |
vec3 | vector to translate by |
Returns:
out
- Type
- mat4
# (static) transpose(out, a) → {mat4}
- Source:
Transpose the values of a mat4
Parameters:
Name | Type | Description |
---|---|---|
out |
mat4 | the receiving matrix |
a |
mat4 | the source matrix |
Returns:
out
- Type
- mat4