Documentation / base / Matrix3x3
Class: Matrix3x3
Defined in: libs/base/src/math/vector.ts:2720
3x3 Matrix
Remarks
The matrix is column-major: | m00, m10, m20 | | m01, m11, m21 | | m02, m12, m22 |
Extends
Indexable
[
index:number]:number
Constructors
Constructor
new Matrix3x3(
m00,m10,m20,m01,m11,m21,m02,m12,m22):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2733
Creates a Matrix3x3 initialized with values.
Parameters
m00
number
element at row 0, column 0
m10
number
element at row 0, column 1
m20
number
element at row 0, column 2
m01
number
element at row 1, column 0
m11
number
element at row 1, column 1
m21
number
element at row 1, column 2
m02
number
element at row 2, column 0
m12
number
element at row 2, column 1
m22
number
element at row 2, column 2
Returns
Matrix3x3
Overrides
Constructor
new Matrix3x3(
elements):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2748
Creates a Matrix3x3 initialized with values in an array.
Parameters
elements
number[]
Array that contains the values.
Returns
Matrix3x3
Overrides
Constructor
new Matrix3x3(
array):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2753
Cerates a Matrix3x3 initialized with values in a Float32Array.
Parameters
array
Float32Array
Float32Array object that contains the values.
Returns
Matrix3x3
Overrides
Constructor
new Matrix3x3(
buffer,offset):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2759
Creates a new Matrix3x3 placed on a given ArrayBuffer object.
Parameters
buffer
ArrayBuffer
The array buffer object.
offset
number
The byte offset of the buffer where the matrix placed at.
Returns
Matrix3x3
Overrides
Constructor
new Matrix3x3():
Matrix3x3
Defined in: libs/base/src/math/vector.ts:2763
Creates a new identity Matrix3x3.
Returns
Matrix3x3
Overrides
Accessors
m00
Get Signature
get m00():
number
Defined in: libs/base/src/math/vector.ts:2818
Get the element at row 0, column 0
Returns
number
Set Signature
set m00(
v):void
Defined in: libs/base/src/math/vector.ts:2821
Parameters
v
number
Returns
void
m10
Get Signature
get m10():
number
Defined in: libs/base/src/math/vector.ts:2825
Get the element at row 0, column 1
Returns
number
Set Signature
set m10(
v):void
Defined in: libs/base/src/math/vector.ts:2828
Parameters
v
number
Returns
void
m20
Get Signature
get m20():
number
Defined in: libs/base/src/math/vector.ts:2832
Get the element at row 0, column 2
Returns
number
Set Signature
set m20(
v):void
Defined in: libs/base/src/math/vector.ts:2835
Parameters
v
number
Returns
void
m01
Get Signature
get m01():
number
Defined in: libs/base/src/math/vector.ts:2839
Get the element at row 1, column 0
Returns
number
Set Signature
set m01(
v):void
Defined in: libs/base/src/math/vector.ts:2842
Parameters
v
number
Returns
void
m11
Get Signature
get m11():
number
Defined in: libs/base/src/math/vector.ts:2846
Get the element at row 1, column 1
Returns
number
Set Signature
set m11(
v):void
Defined in: libs/base/src/math/vector.ts:2849
Parameters
v
number
Returns
void
m21
Get Signature
get m21():
number
Defined in: libs/base/src/math/vector.ts:2853
Get the element at row 1, column 2
Returns
number
Set Signature
set m21(
v):void
Defined in: libs/base/src/math/vector.ts:2856
Parameters
v
number
Returns
void
m02
Get Signature
get m02():
number
Defined in: libs/base/src/math/vector.ts:2860
Get the element at row 2, column 0
Returns
number
Set Signature
set m02(
v):void
Defined in: libs/base/src/math/vector.ts:2863
Parameters
v
number
Returns
void
m12
Get Signature
get m12():
number
Defined in: libs/base/src/math/vector.ts:2867
Get the element at row 2, column 1
Returns
number
Set Signature
set m12(
v):void
Defined in: libs/base/src/math/vector.ts:2870
Parameters
v
number
Returns
void
m22
Get Signature
get m22():
number
Defined in: libs/base/src/math/vector.ts:2874
Get the element at row 2, column 2
Returns
number
Set Signature
set m22(
v):void
Defined in: libs/base/src/math/vector.ts:2877
Parameters
v
number
Returns
void
Methods
equalsTo()
equalsTo(
other,epsl?):boolean
Defined in: libs/base/src/math/vector.ts:32
Check if all data is close enough to another
Parameters
other
Float32Array<ArrayBuffer>
The data to be compared with.
epsl?
number
Returns
boolean
true if close enough, otherwise false.
Inherited from
toString()
toString():
string
Defined in: libs/base/src/math/vector.ts:52
Convert this to string object.
Returns
string
Inherited from
isNaN()
isNaN():
boolean
Defined in: libs/base/src/math/vector.ts:61
Check the data for the presence of NaN.
Returns
boolean
true if NaN is present, otherwise false.
Inherited from
setRandom()
setRandom(
minValue,maxValue):void
Defined in: libs/base/src/math/vector.ts:75
Generate random vector
Parameters
minValue
number
Minimum value of any component of the vector
maxValue
number
Maximum value of any component of the vector
Returns
void
Inherited from
clone()
clone():
Matrix3x3
Defined in: libs/base/src/math/vector.ts:2814
Creates a new Matrix3x3 initialized with values from this matrix.
Returns
Matrix3x3
The new matrix.
getRow()
getRow(
row,result?):Vector3
Defined in: libs/base/src/math/vector.ts:2886
Get the values in a row as a Vector3
Parameters
row
number
The row index
result?
The output vector, if not specified, a new vector will be created.
Returns
The output vector
setRow()
setRow(
row,v):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2895
Set values to a row in the matrix.
Parameters
row
number
The row index
v
The values to be set
Returns
Matrix3x3
- self
setRowXYZ()
setRowXYZ(
row,x,y,z):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2909
Set values to a row in the matrix.
Parameters
row
number
The row index
x
number
The first value of the row to be set
y
number
The second value of the row to be set
z
number
The third value of the row to be set
Returns
Matrix3x3
- self
getCol()
getCol(
col,result?):Vector3
Defined in: libs/base/src/math/vector.ts:2921
Get the values in a column as a Vector3
Parameters
col
number
The column index
result?
The output vector, if not specified, a new vector will be created.
Returns
The output vector
setCol()
setCol(
col,v):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2930
Set values to a column in the matrix.
Parameters
col
number
The column index.
v
The values to be set.
Returns
Matrix3x3
self
setColXYZ()
setColXYZ(
col,x,y,z):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2944
Set values to a column in the matrix.
Parameters
col
number
The column index.
x
number
The first value of the column to be set.
y
number
The second value of the column to be set.
z
number
The third value of the column to be set.
Returns
Matrix3x3
self
add()
staticadd(a,b,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2957
Adds two Matrix3x3's component-wise.
Parameters
a
Matrix3x3
The first operand.
b
Matrix3x3
The second operand.
result?
Matrix3x3
The output matrix (can be the same as a or b), if not specified, a new matrix will be created.
Returns
Matrix3x3
The result matrix
sub()
staticsub(a,b,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2971
Subtracts two Matrix3x3's component-wise.
Parameters
a
Matrix3x3
The first operand.
b
Matrix3x3
The second operand.
result?
Matrix3x3
The output matrix (can be the same as a or b), if not specified, a new matrix will be created.
Returns
Matrix3x3
The result matrix
mul()
staticmul(a,b,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2985
Multiplys two Matrix3x3's component-wise.
Parameters
a
Matrix3x3
The first operand.
b
Matrix3x3
The second operand.
result?
Matrix3x3
The output matrix (can be the same as a or b), if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
div()
staticdiv(a,b,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:2999
Divides two Matrix3x3's component-wise.
Parameters
a
Matrix3x3
The first operand.
b
Matrix3x3
The second operand.
result?
Matrix3x3
The output matrix (can be the same as a or b), if not specified, a new matrix will be created.
Returns
Matrix3x3
The result matrix
scale()
staticscale(a,f,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3013
Scales a Matrix3x3 by a scalar number component-wise.
Parameters
a
Matrix3x3
The matrix to be scaled.
f
number
The scalar number.
result?
Matrix3x3
The output matrix (can be the same as a), if not specified, a new matrix will be created.
Returns
Matrix3x3
The result matrix
identity()
staticidentity(result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3025
Creates an identity Matrix3x3.
Parameters
result?
Matrix3x3
The output matrix, if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
transpose()
statictranspose(matrix,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3036
Transpose a Matrix3x3.
Parameters
matrix
Matrix3x3
The matrix to be transposed.
result?
Matrix3x3
The output matrix (can be the same as matrix), if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
invert()
staticinvert(matrix,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3061
Inverts a Matrix3x3
Parameters
matrix
Matrix3x3
The matrix to be inverted.
result?
Matrix3x3
The output matrix (can be the same as matrix). if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
rotationX()
staticrotationX(angle,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3093
Creates a Matrix3x3 that presents a rotation around x axis.
Parameters
angle
number
The rotate angle in radians.
result?
Matrix3x3
The output matrix, if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
rotationY()
staticrotationY(angle,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3114
Creates a Matrix3x3 that presents a rotation around y axis.
Parameters
angle
number
The rotate angle in radians.
result?
Matrix3x3
The output matrix, if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
rotationZ()
staticrotationZ(angle,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3135
Creates a Matrix3x3 that presents a rotation around z axis.
Parameters
angle
number
The rotate angle in radians.
result?
Matrix3x3
The output matrix, if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
rotation()
staticrotation(axis,angle,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3157
Creates a Matrix3x3 that presents a rotation around a given axis.
Parameters
axis
The rotation axis.
angle
number
The rotate angle in radians.
result?
Matrix3x3
The output matrix, if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
multiply()
staticmultiply(m1,m2,result?):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3190
Multiplies two Matrix3x3's
Parameters
m1
Matrix3x3
The first operand.
m2
Matrix3x3
The second operand.
result?
Matrix3x3
The output matrix (can be the same as m1 or m2), if not specified, a new matrix will be created.
Returns
Matrix3x3
The output matrix
subBy()
subBy(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3228
Subtract a matrix from this matrix component-wise.
Parameters
other
Matrix3x3
The matrix that will be subtract.
Returns
Matrix3x3
self
addBy()
addBy(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3237
Add a matrix to this matrix component-wise.
Parameters
other
Matrix3x3
The matrix that will be added.
Returns
Matrix3x3
self
mulBy()
mulBy(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3246
Multiplies this matrix by a matrix component-wise.
Parameters
other
Matrix3x3
The matrix that will be multiplied by.
Returns
Matrix3x3
self
divBy()
divBy(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3255
Divide this matrix by a matrix component-wise.
Parameters
other
Matrix3x3
The matrix that will be divide by.
Returns
Matrix3x3
self
scaleBy()
scaleBy(
f):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3264
Scale this matrix by a scalar number component-wise.
Parameters
f
number
amount to scale this matrix by.
Returns
Matrix3x3
self
identity()
identity():
Matrix3x3
Defined in: libs/base/src/math/vector.ts:3272
Make this matrix identity.
Returns
Matrix3x3
self
inplaceInvert()
inplaceInvert():
Matrix3x3
Defined in: libs/base/src/math/vector.ts:3280
Calculate the inverse of this matrix inplace.
Returns
Matrix3x3
self
transpose()
transpose():
Matrix3x3
Defined in: libs/base/src/math/vector.ts:3288
Calculate the transpose of this matrix inplace.
Returns
Matrix3x3
self
multiplyRight()
multiplyRight(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3301
Post-multiply by a matrix inplace.
Parameters
other
Matrix3x3
The matrix that will be multiplied by.
Returns
Matrix3x3
self
Remarks
this = this * other
multiplyLeft()
multiplyLeft(
other):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3314
Pre-multiply by a matrix inplace.
Parameters
other
Matrix3x3
The matrix that will be multiplied by.
Returns
Matrix3x3
self
Remarks
this = other * this
rotationX()
rotationX(
angle):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3323
Calculates a rotation around x axis inplace.
Parameters
angle
number
The rotate angle in radians.
Returns
Matrix3x3
self
rotationY()
rotationY(
angle):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3332
Calculates a rotation around y axis inplace.
Parameters
angle
number
The rotate angle in radians.
Returns
Matrix3x3
self
rotationZ()
rotationZ(
angle):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3341
Calculates a rotation around z axis inplace.
Parameters
angle
number
The rotate angle in radians.
Returns
Matrix3x3
self
rotation()
rotation(
axis,angle):Matrix3x3
Defined in: libs/base/src/math/vector.ts:3351
Calculates a rotation around a given axis.
Parameters
axis
The rotation axis.
angle
number
The rotate angle in radians.
Returns
Matrix3x3
self
transform()
transform(
vec,result?):Vector3
Defined in: libs/base/src/math/vector.ts:3361
Transform a vector by this matrix.
Parameters
vec
The vector to be transformed.
result?
The output vector (can be the same as vec), if not specified, a new vector will be created.
Returns
The output vector
transformPoint()
transformPoint(
vec,result?):Vector3
Defined in: libs/base/src/math/vector.ts:3372
Transform a vector by this matrix.
Parameters
vec
The vector to be transformed.
result?
The output vector (can be the same as vec), if not specified, a new vector will be created.
Returns
The output vector
transformVector()
transformVector(
vec,result?):Vector3
Defined in: libs/base/src/math/vector.ts:3378
Transform a vector by this matrix.
Parameters
vec
The vector to be transformed.
result?
The output vector (can be the same as vec), if not specified, a new vector will be created.
Returns
The output vector