Matrix
-
class
Matrix
() Object representing the 4x4 Matrix. More information can be found [here](https://docs.techsoft3d.com/communicator/latest/prog_guide/viewing/model_attributes/matrices.html).
Constructors
Properties
Methods
assign()
copy()
equals()
equalsWithTolerance()
inverseAndDeterminant()
isIdentity()
loadIdentity()
multiplyByScalar()
normalMatrix()
setScaleComponent()
setTranslationComponent()
toJson()
transform()
transform4()
transformArray()
transformBox()
transpose()
upperLeft3x3Determinant()
createFromArray()
createFromBasis()
createFromOffAxisRotation()
fromJson()
inverse()
multiply()
xAxisRotation()
yAxisRotation()
zAxisRotation()
Constructors
-
Matrix.
constructor
() Creates a new matrix set to the identity matrix.
Return type: Matrix
Methods
assign
equals
equalsWithTolerance
-
Matrix.
equalsWithTolerance
(other, tolerance) Arguments: - other (
Matrix()
) – Matrix to compare with. - tolerance (
number()
) – Tolerance to be used in the comparison.
Compares this matrix with another using a tolerance.
Returns: True if the values of this matrix equal those of the other. Return type: boolean - other (
inverseAndDeterminant
-
Matrix.
inverseAndDeterminant
() Computes the determinant and inverse of a matrix, if possible.
Returns: An array containing the inverse (or null if not invertible) followed by the determinant Return type: (null | Matrix, number)
loadIdentity
-
Matrix.
loadIdentity
() Sets the matrix to the identity matrix.
Returns: This matrix object. Return type: this
multiplyByScalar
-
Matrix.
multiplyByScalar
(scalar) Arguments: - scalar (
number()
) – Scalar to multiply the matrix with.
Multiply the matrix by given scalar.
Returns: This matrix object. Return type: this - scalar (
normalMatrix
-
Matrix.
normalMatrix
() Returns: the version of this matrix suitable for applying to normals, i.e. the inverse transpose of the upper-left 3x3 submatrix. Return type: null | Matrix
setScaleComponent
-
Matrix.
setScaleComponent
(x, y, z) Arguments: - x (
number()
) – X scale value. - y (
number()
) – Y scale value. - z (
number()
) – Z scale value.
Sets the scale components of this matrix.
Returns: This matrix object. Return type: this - x (
setTranslationComponent
-
Matrix.
setTranslationComponent
(x, y, z) Arguments: - x (
number()
) – X translation value. - y (
number()
) – Y translation value. - z (
number()
) – Z translation value.
Sets the translation components of this matrix.
Returns: This matrix object. Return type: this - x (
toJson
-
Matrix.
toJson
() Creates an object ready for JSON serialization.
Returns: The prepared object. Return type: [number]
transform
-
Matrix.
transform
(point[, result]) Arguments: Transforms a point according to this matrix. The source and destination points are allowed to be the same object.
Returns: A new point if result is undefined, result otherwise. Return type: Point3
transform4
-
Matrix.
transform4
(point[, result]) Arguments: Transforms a point according to this matrix. The source and destination points are allowed to be the same object.
Returns: A new point if result is undefined, result otherwise. Return type: Point4
transformArray
-
Matrix.
transformArray
(inPoints, outPoints) Arguments: - inPoints (
[Point3]()
) – an array of points to be transformed. - outPoints (
[Point3]()
) – an array that will be populated with transformed points. Note that the results will be pushed onto the end of the array.
Transforms an array of points according to this matrix.
Return type: void - inPoints (
transpose
-
Matrix.
transpose
() Sets this matrix equal to its transpose.
Returns: This matrix object. Return type: this
upperLeft3x3Determinant
-
Matrix.
upperLeft3x3Determinant
() Computes the determinant of the upper-left 3x3 subsection of this matrix.
Return type: number
static createFromArray
-
Matrix.
createFromArray
(arr) Arguments: - arr (
[number]()
) – 16 element array of numbers.
Creates a matrix from an array of numbers.
Returns: New matrix with elements set to the values of the array parameter. Array elements will be in column-major order. Return type: Matrix - arr (
static createFromBasis
static createFromOffAxisRotation
-
Matrix.
createFromOffAxisRotation
(axis, degrees) Arguments: - axis (
Point3()
) – Axis to rotate about. - degrees (
number()
) – Amount of degrees to rotate about the provided axis.
Creates a rotation matrix from an arbitrary axis.
Returns: Rotation matrix which represents the rotation about the supplied axis. Return type: Matrix - axis (
static fromJson
-
Matrix.
fromJson
(obj) Arguments: - obj (
unknown()
) – None
Creates a new [[Matrix]] from an object given by [[toJson]].
Returns: The prepared object. Return type: Matrix - obj (
static inverse
static multiply
static xAxisRotation
-
Matrix.
xAxisRotation
(degrees) Arguments: - degrees (
number()
) – The degrees of the rotation.
Returns the matrix for a clockwise rotation around the X-axis.
Returns: The rotation matrix. Return type: Matrix - degrees (