Mat4
The Mat4 class represents a 4×4 matrix. Mat4 contains several helpful static functions, which can be called like this: Mat4.createRotation(quat)
Property | Description |
---|---|
arr |
The array that represents the matrix. |
Function | Description |
---|---|
rotate(x, y, z, angle) |
Post-multiplies this matrix by the matrix corresponding to the specified rotation about the specified axis. |
scale(x, y, z) |
Post-multiplies this matrix by the matrix corresponding to the specified scale transformation. |
translate(x, y, z) |
Post-multiplies this matrix by the matrix corresponding to the specified translation. |
Static Function | Description |
---|---|
createIdentity() |
Creates and returns a 4×4 identity matrix. |
createOrthographic(left, right, bottom, top, near, far) |
Creates an orthographic projection transformation matrix. The parameters form a rectangular cuboid that defines the visible area of rendering. |
createRotation(quat) |
Creates a rotation matrix based on the given Quaternion. |
createTranslation(x, y, z) |
Creates a translation matrix based on the given x, y, z coordinates. |
inverse(matrix) |
Returns the inverse of the given matrix. |
multiply(matrix1, matrix2) |
Multipies the given matrices together. |
transformPoint(matrix, vector) |
Transforms the specified point by this matrix, and returns the result. |
transformVector(matrix, vector) |
Transforms the specified vector by this matrix by treating the fourth (w) coordinate as zero, and returns the result. |
arr
array – the array that represents the matrix
rotate(x, y, z, angle)
Post-multiplies this matrix by the matrix corresponding to the specified rotation about the specified axis.
Parameters
number x – the x-axis to rotate about
number y – the y-axis to rotate about
number z – the z-axis to rotate about
number angle – the angle of the rotation (radians)
scale(x, y, z)
Post-multiplies this matrix by the matrix corresponding to the specified scale transformation.
Parameters
number x – the amount to scale along the x-axis
number y – the amount to scale along the y-axis
number z – the amount to scale along the z-axis
translate(x, y, z)
Post-multiplies this matrix by the matrix corresponding to the specified translation.
Parameters
number x – the amount to translate along the x-axis
number y – the amount to translate along the y-axis
number z – the amount to translate along the z-axis
createIdentity()
Creates and returns a 4×4 identity matrix.
Returns
Mat4 matrix – A new identity matrix
createOrthographic(left, right, bottom, top, near, far)
Creates an orthographic projection transformation matrix. The parameters form a rectangular cuboid that defines the visible area of rendering.
Parameters
number left – farthest left on the x-axis
number right – farthest right on the x-axis
number bottom – farthest down on the y-axis
number top – farthest up on the y-axis
number near – closest on the z-axis
number far – furthest on the z-axis
Returns
Mat4 – the resulting orthographic projection matrix
createRotation(quat)
Creates a rotation matrix based on the given Quaternion.
Parameters
Quaternion quat – the Quaternion representation of the rotation
Returns
Mat4 – the resulting rotation matrix
createTranslation(x, y, z)
Creates a translation matrix based on the given x, y, z coordinates.
Parameters
number x – the translation on the x-axis
number y – the translation on the y-axis
number z – the translation on the z-axis
Returns
Mat4 – the resulting translation matrix
inverse(matrix)
Returns the inverse of the given matrix.
Parameters
Mat4 matrix – the matrix to be inverted
Returns
Mat4 – the inverted matrix
multiply(matrix1, matrix2)
Multipies the given matrices together.
Parameters
Mat4 matrix1 – the first matrix to multiply
Mat4 matrix2 – the second matrix to multiply
Parameters
Mat4 – the resulting matrix
transformPoint(matrix, point)
Transforms the specified point by this matrix, and returns the result.
Parameters
Mat4 matrix – the transformation matrix
Vec3 point – the point to transform
Returns
Vec3 – the transformed point
transformVector(matrix, vector)
Transforms the specified vector by this matrix by treating the fourth (w) coordinate as zero, and returns the result.
Parameters
Mat4 matrix – the transformation matrix
Vec3 vector – the vector to transform
Returns
Vec3 – the transformed vector