Class: Matrix4
一个表示 4*4 的矩阵 1--0--0--0 | | | | 0--1--0--0 | | | | 0--0--1--0 | | | | 0--0--0--1
const m = new Matrix4();
Hierarchy
- 
default↳
Matrix4 
Table of contents
Constructors
Properties
Accessors
Methods
- fromArray
 - toArray
 - set
 - transpose
 - invert
 - adjoint
 - determinant
 - add
 - subtract
 - multiply
 - multiplyScalar
 - premultiply
 - translate
 - rotate
 - scale
 - scaleScalar
 - fromTranslation
 - fromRotation
 - fromRotationX
 - fromRotationY
 - fromRotationZ
 - fromScale
 - fromRotationTranslation
 - fromPerspective
 - fromOrthogonal
 - fromQuat
 - equals
 - getRotation
 - getScale
 - getTranslation
 - rotateX
 - rotateY
 - rotateZ
 - compose
 - decompose
 - copy
 - clone
 - toString
 
Constructors
constructor
• new Matrix4(m00?, m01?, m02?, m03?, m10?, m11?, m12?, m13?, m20?, m21?, m22?, m23?, m30?, m31?, m32?, m33?): Matrix4
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
m00 | number | 1 | 第一行第一列,默认是 1 | 
m01 | number | 0 | 第一行第二列,默认是 0 | 
m02 | number | 0 | 第一行第三列,默认是 0 | 
m03 | number | 0 | 第一行第四列,默认是 0 | 
m10 | number | 0 | 第二行第一列,默认是 0 | 
m11 | number | 1 | 第二行第二列,默认是 1 | 
m12 | number | 0 | 第二行第三列,默认是 0 | 
m13 | number | 0 | 第二行第四列,默认是 0 | 
m20 | number | 0 | 第三行第一列,默认是 0 | 
m21 | number | 0 | 第三行第二列,默认是 0 | 
m22 | number | 1 | 第三行第三列,默认是 1 | 
m23 | number | 0 | 第三行第四列,默认是 0 | 
m30 | number | 0 | 第四行第一列,默认是 0 | 
m31 | number | 0 | 第四行第二列,默认是 0 | 
m32 | number | 0 | 第四行第三列,默认是 0 | 
m33 | number | 1 | 第四行第四列,默认是 1 | 
Returns
Overrides
Matrix.constructor
Defined in
Properties
elements
• elements: Float32Array | Float64Array
Overrides
Matrix.elements
Defined in
Accessors
x
• get x(): number
获取向量 x 值
Returns
number
number;
Defined in
y
• get y(): number
获取向量 y 值
Returns
number
number;
Defined in
z
• get z(): number
获取向量 z 值
Returns
number
number;
Defined in
w
• get w(): number
获取向量 w 值
Returns
number
number;
Defined in
identity
• get identity(): Matrix4
获取单位矩阵
Returns
Defined in
Methods
fromArray
▸ fromArray(array, offset?): Matrix4
从数组构建矩阵
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
array | any | undefined | 原始数组 | 
offset | number | 0 | 数组偏移量 | 
Returns
Inherited from
Matrix.fromArray
Defined in
toArray
▸ toArray(out?, offset?): Float32Array | Float64Array | number[]
从矩阵转换到数组
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
out | Float32Array | Float64Array | number[] | [] | 输出数据 | 
offset | number | 0 | 偏移量 | 
Returns
Float32Array | Float64Array | number[]
Inherited from
Matrix.toArray
Defined in
set
▸ set(m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33): Matrix4
将此矩阵的每一项设置为给定的值
Parameters
| Name | Type | 
|---|---|
m00 | any | 
m01 | any | 
m02 | any | 
m03 | any | 
m10 | any | 
m11 | any | 
m12 | any | 
m13 | any | 
m20 | any | 
m21 | any | 
m22 | any | 
m23 | any | 
m30 | any | 
m31 | any | 
m32 | any | 
m33 | any | 
Returns
Defined in
transpose
▸ transpose(): Matrix4
将此矩阵转换为转置矩阵
Returns
this
Defined in
invert
▸ invert(m?): Matrix4
将此矩阵转换为逆矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
m | Matrix4 | 默认为当 前实例 | 
Returns
Matrix4
Defined in
adjoint
▸ adjoint(m?): Matrix4
计算此矩阵的伴随矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
m | Matrix4 | 默认为当前实例 | 
Returns
Defined in
determinant
▸ determinant(): any
计算行列式
Returns
any
Defined in
add
▸ add(a, b?): Matrix4
将两个 Matrix4 矩阵相加
Parameters
| Name | Type | Description | 
|---|---|---|
a | Matrix4 | |
b? | Matrix4 | 如果不传,计算 this 和 a 的和 | 
Returns
this
Defined in
subtract
▸ subtract(a, b?): Matrix4
将两个 Matrix4 矩阵相减
Parameters
| Name | Type | Description | 
|---|---|---|
a | Matrix4 | |
b? | Matrix4 | 如果不传,计算 this 和 a 的差 | 
Returns
this
Defined in
multiply
▸ multiply(a, b?): Matrix4
计算两个 Matrix4 矩阵的乘积
Parameters
| Name | Type | Description | 
|---|---|---|
a | Matrix4 | |
b? | Matrix4 | 如果不传,计算 this 和 a 的乘积 | 
Returns
this
Defined in
multiplyScalar
▸ multiplyScalar(a?, b?): Matrix4
计算 Matrix4 与标量的乘积
Parameters
| Name | Type | Description | 
|---|---|---|
a | Matrix4 | 如果不传,计算 this 和 b 的乘积 | 
b? | number | 
Returns
Defined in
premultiply
▸ premultiply(a, b?): Matrix4
左乘
Parameters
| Name | Type | Description | 
|---|---|---|
a | Matrix4 | |
b? | Matrix4 | 如果不传,计算 this 和 a 的左乘 | 
Returns
this
Defined in
translate
▸ translate(v): Matrix4
通过给定的向量 Vector3 平移此矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
v | Vector3 | 向量 | 
Returns
this
Defined in
rotate
▸ rotate(rad): Matrix4
旋转此矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
rad | number | 弧度 | 
Returns
this
Defined in
scale
▸ scale(vec3): Matrix4
通过给定的 Vector3 向量缩放此矩阵
Parameters
| Name | Type | 
|---|---|
vec3 | Vector3 | 
Returns
Defined in
scaleScalar
▸ scaleScalar(s): Matrix4
通过标量 s 缩放此矩阵,默认在内部构建一个三维向量 [s, s, s]
Parameters
| Name | Type | 
|---|---|
s | number | 
Returns
Defined in
fromTranslation
▸ fromTranslation(vec): Matrix4
从平移向量创建矩阵
Parameters
| Name | Type | 
|---|---|
vec | Vector3 | 
Returns
Defined in
fromRotation
▸ fromRotation(rad, axis): Matrix4
从给定轴和旋转角度创建矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
rad | number | 弧度 | 
axis | any | 轴 | 
Returns
Defined in
fromRotationX
▸ fromRotationX(rad): Matrix4
从绕 X 轴的给定角度创建矩阵
Parameters
| Name | Type | 
|---|---|
rad | number | 
Returns
Defined in
fromRotationY
▸ fromRotationY(rad): Matrix4
从绕 Y 轴的给定角度创建矩阵
Parameters
| Name | Type | 
|---|---|
rad | number | 
Returns
Defined in
fromRotationZ
▸ fromRotationZ(rad): Matrix4
从绕 Z 轴的给定角度创建矩阵
Parameters
| Name | Type | 
|---|---|
rad | any | 
Returns
Defined in
fromScale
▸ fromScale(vec): Matrix4
从缩放向量计算 矩阵
Parameters
| Name | Type | 
|---|---|
vec | Vector3 | 
Returns
Defined in
fromRotationTranslation
▸ fromRotationTranslation(quat, v): Matrix4
从平移向量和四元数计算矩阵
Parameters
| Name | Type | 
|---|---|
quat | Quaternion | 
v | Vector3 | 
Returns
Defined in
fromPerspective
▸ fromPerspective(fov, aspect, near, far): Matrix4
创建一个透视投影矩阵
Parameters
| Name | Type | 
|---|---|
fov | any | 
aspect | any | 
near | any | 
far | any | 
Returns
Defined in
fromOrthogonal
▸ fromOrthogonal(left, right, bottom, top, near, far): Matrix4
创建一个正交投影矩阵
Parameters
| Name | Type | 
|---|---|
left | any | 
right | any | 
bottom | any | 
top | any | 
near | any | 
far | any | 
Returns
Defined in
fromQuat
▸ fromQuat(q): Matrix4
从给定的四元数计算矩阵
Parameters
| Name | Type | 
|---|---|
q | Quaternion | 
Returns
Defined in
equals
▸ equals(mat4): any
判断两个矩阵是否近似相等
Parameters
| Name | Type | 
|---|---|
mat4 | any | 
Returns
any
Defined in
getRotation
▸ getRotation(q?): Quaternion
获取旋转向量
Parameters
| Name | Type | 
|---|---|
q | Quaternion | 
Returns
Defined in
getScale
▸ getScale(v?): Vector3
获取缩放向量
Parameters
| Name | Type | 
|---|---|
v | Vector3 | 
Returns
Defined in
getTranslation
▸ getTranslation(v?): Vector3
获取平移向量
Parameters
| Name | Type | 
|---|---|
v | Vector3 | 
Returns
Defined in
rotateX
▸ rotateX(rad): Matrix4
围绕 X 轴按给定弧度旋转矩阵
Parameters
| Name | Type | 
|---|---|
rad | any | 
Returns
Defined in
rotateY
▸ rotateY(rad): Matrix4
围绕 Y 轴按给定弧度旋转矩阵
Parameters
| Name | Type | 
|---|---|
rad | any | 
Returns
Defined in
rotateZ
▸ rotateZ(rad): Matrix4
围绕 Z 轴按给定弧度旋转矩阵
Parameters
| Name | Type | 
|---|---|
rad | any | 
Returns
Defined in
compose
▸ compose(v, q, s): Matrix4
从四元数旋转、平移和缩放创建矩阵
Parameters
| Name | Type | 
|---|---|
v | Vector3 | 
q | Quaternion | 
s | Vector3 | 
Returns
Defined in
decompose
▸ decompose(): Object
从矩阵转换到四元数、平移和缩放向量
Returns
Object
| Name | Type | 
|---|---|
rotation | Quaternion | 
scale | Vector3 | 
translation | Vector3 | 
Defined in
copy
▸ copy(m): Matrix4
将传入的 Matrix4 复制到此矩阵
Parameters
| Name | Type | Description | 
|---|---|---|
m | Matrix4 | 源矩阵 | 
Returns
this
Defined in
clone
▸ clone(): Matrix4
从此矩阵创建一个新的 4*4 矩阵
Returns
a new Matrix4
Defined in
toString
▸ toString(): string
转换为字符串
Returns
string