Options
All
  • Public
  • Public/Protected
  • All
Menu

存储矩阵(4x4)数据的类

| m01 m02 m03 m04 |
| m11 m12 m13 m14 |
| m21 m22 m23 m24 |
| m31 m32 m33 m34 |

Hierarchy

  • Matrix

Index

Constructors

constructor

  • 创建一个空矩阵。

    Returns Matrix

Accessors

tuple

Methods

addTranslation

  • addTranslation(vector: Vector3): Matrix
  • addTranslation(x?: number, y?: number, z?: number): Matrix
  • 将平移向量插入到当前转换矩阵之中。

    Parameters

    Returns Matrix

    当前插入平移向量之后的转换矩阵自身

  • 转换矩阵在各轴向上的平移量。

    Parameters

    • Optional x: number

      x 轴上的平移量

    • Optional y: number

      y 轴上的平移量

    • Optional z: number

      z 轴上的平移量

    Returns Matrix

    当前插入平移向量之后的转换矩阵自身

clone

  • 复制当前矩阵

    Returns Matrix

    一个从当前矩阵复制得到的新的矩阵

copyFrom

  • 从源矩阵中复制各项值至当前矩阵之中。

    Parameters

    Returns Matrix

    复制之后的当前矩阵

decompose

  • 从当前转换矩阵中分解出平移、旋转及缩放分量。

    Returns { rotation: Quaternion; scale: Vector3; translation: Vector3 }

    一个包含表示缩放向量、位移向量及旋转四元组的对象

decomposeLerpTo

  • 依照下述规则构造新矩阵:

    • 以自身作为变换初始状态,参数传入的矩阵作为变换终止状态,分别分解出各自的平移、旋转及缩放分量;
    • 分别在每个分量的起始状态与终止状态间,按指定浮点梯度进行(球面)线性插值;
    • 将插值计算得到的平移、旋转及缩放分量合成新的插值转换矩阵。

    Parameters

    • end: Matrix

      终止状态的变换矩阵

    • gradient: number

      插值梯度,取值 0~1

    Returns Matrix

    新的插值变换矩阵

determinant

  • determinant(): number
  • 获取当前矩阵的行列式。

    Returns number

    当前矩阵的行列式

getTranslation

  • 获取当前转换矩阵的平移向量。

    Returns Vector3

    提取自转换矩阵平移量的新向量

invert

  • 创建当前矩阵的逆矩阵。

    Returns Matrix

    创建的新矩阵

invertInPlace

  • 将当前矩阵转为其逆矩阵。

    Returns Matrix

    求逆的结果

isIdentity

  • isIdentity(): boolean
  • 检查当前矩阵是否是单位矩阵

    Returns boolean

    当前矩阵为单位矩阵时返回 true

lerpTo

  • 以自身为起始状态,参数传入的变换矩阵为终止状态,按指定浮点梯度进行线性插值。

    Parameters

    • end: Matrix

      终止状态的变换矩阵

    • gradient: number

      插值梯度,取值 0~1

    Returns Matrix

    新的插值变换矩阵

multiply

  • 计算当前矩阵与另一个矩阵得乘积,并将将结果作为新的矩阵返回

    Parameters

    Returns Matrix

    乘积结果矩阵

multiplyInPlace

  • 计算当前矩阵与另一个矩阵得乘积,并将将结果更新至当前矩阵。

    Parameters

    Returns Matrix

    更新后的矩阵

scale

  • scale(scale: number): Matrix
  • 将当前矩阵值乘以比例计算得到新矩阵。

    Parameters

    • scale: number

      缩放比例因子

    Returns Matrix

    新矩阵

scaleInPlace

  • scaleInPlace(scalar: number): Matrix
  • 将当前矩阵值按照比例进行缩放。

    Parameters

    • scalar: number

    Returns Matrix

    当前按比例缩放后的矩阵

setTranslation

  • setTranslation(vector: Vector3): Matrix
  • setTranslation(x: number, y: number, z: number): Matrix
  • 将平移向量设置到当前转换矩阵上。

    Parameters

    Returns Matrix

    当前插入平移向量之后的转换矩阵自身

  • 设置转换矩阵在各轴向上的平移量。

    Parameters

    • x: number

      x 轴上的平移量

    • y: number

      y 轴上的平移量

    • z: number

      z 轴上的平移量

    Returns Matrix

    当前插入平移向量之后的转换矩阵自身

Static Compose

  • 创建一个由

    • scale 缩放(vector3)
    • rotation 旋转(quaternion)
    • translation 平移(vector)

    所合成的转换矩阵。

    Parameters

    • scale: Vector3

      定义三维缩放的向量

    • rotation: Quaternion

      定义旋转的四元数

    • translation: Vector3

      定义相对于原点平移的向量

    Returns Matrix

    创建的转换矩阵

Static Decompose

  • 从换矩阵中分解出平移、旋转及缩放分量。

    Parameters

    Returns { rotation: Quaternion; scale: Vector3; translation: Vector3 }

    一个包含表示缩放向量、位移向量及旋转四元组的对象

Static FromQuaternion

  • 根据四元数创建一个旋转矩阵。

    Parameters

    Returns Matrix

Static FromValues

  • FromValues(initialM11: number, initialM12: number, initialM13: number, initialM14: number, initialM21: number, initialM22: number, initialM23: number, initialM24: number, initialM31: number, initialM32: number, initialM33: number, initialM34: number, initialM41: number, initialM42: number, initialM43: number, initialM44: number): Matrix
  • 指定十六个初始值创建一个新的转换矩阵。

    Parameters

    • initialM11: number

      第 1 行第 1 列的初始值(matrix[0][0]

    • initialM12: number

      第 1 行第 2 列的初始值(matrix[0][1]

    • initialM13: number

      第 1 行第 3 列的初始值(matrix[0][2]

    • initialM14: number

      第 1 行第 4 列的初始值(matrix[0][3]

    • initialM21: number

      第 2 行第 1 列的初始值(matrix[1][0]

    • initialM22: number

      第 2 行第 2 列的初始值(matrix[1][1]

    • initialM23: number

      第 2 行第 3 列的初始值(matrix[1][2]

    • initialM24: number

      第 2 行第 4 列的初始值(matrix[1][3]

    • initialM31: number

      第 3 行第 1 列的初始值(matrix[2][0]

    • initialM32: number

      第 3 行第 2 列的初始值(matrix[2][1]

    • initialM33: number

      第 3 行第 3 列的初始值(matrix[2][2]

    • initialM34: number

      第 3 行第 4 列的初始值(matrix[2][3]

    • initialM41: number

      第 4 行第 1 列的初始值(matrix[3][0]

    • initialM42: number

      第 4 行第 2 列的初始值(matrix[3][1]

    • initialM43: number

      第 4 行第 3 列的初始值(matrix[3][2]

    • initialM44: number

      第 4 行第 4 列的初始值(matrix[3][3]

    Returns Matrix

    新创建的转换矩阵

Static FromXYZAxes

  • 创建由 3 个左手轴组成的旋转矩阵。

    Parameters

    • xAxis: Vector3

      表示 x 轴的单位向量

    • yAxis: Vector3

      表示 y 轴的单位向量

    • zAxis: Vector3

      表示 z 轴的单位向量

    Returns Matrix

Static FromXZAxes

  • 创建由 x 轴与 z 轴定义左手旋转矩阵。 x 轴将保持不变,z 可能会发生最小的变化以加强正交性。 y 轴将由计算得出。

    Note: 输入不需要标准化。

    Parameters

    • xAxis: Vector3

      表示 x 轴的向量

    • zAxis: Vector3

      表示 z 轴的向量

    Returns Matrix

Static FromZXAxes

  • 创建由 z 轴与 x 轴定义左手旋转矩阵。 z 轴将保持不变,x 可能会发生最小的变化以加强正交性。 y 轴将由计算得出。

    Note: 输入不需要标准化。

    Parameters

    • zAxis: Vector3

      表示 z 轴的向量

    • xAxis: Vector3

      表示 x 轴的向量

    Returns Matrix

Static Identity

  • 创建一个单位矩阵。

    Returns Matrix

    新创建的单位矩阵

Static RotationAxis

  • 创建一个表示根据给定轴向量旋转指定弧度角度的旋转矩阵。

    Parameters

    • axis: Vector3

      表示旋转轴方向的向量

    • angle: number

      旋转弧度角度

    Returns Matrix

Static RotationX

  • RotationX(angle: number): Matrix
  • 创建一个表示按 x 轴旋转指定弧度角度的旋转矩阵。

    Parameters

    • angle: number

      旋转弧度角度

    Returns Matrix

    创建的旋转矩阵

Static RotationY

  • RotationY(angle: number): Matrix
  • 创建一个表示按 y 轴旋转指定弧度角度的旋转矩阵。

    Parameters

    • angle: number

      旋转弧度角度

    Returns Matrix

    创建的旋转矩阵

Static RotationYawPitchRoll

  • RotationYawPitchRoll(yaw: number, pitch: number, roll: number): Matrix
  • 创建一个旋转矩阵。

    Parameters

    • yaw: number

      横倾弧度角度 (y 轴)

    • pitch: number

      纵倾弧度角度 (x 轴)

    • roll: number

      横摆弧度角度 (z 轴)

    Returns Matrix

    创建的旋转矩阵

Static RotationZ

  • RotationZ(angle: number): Matrix
  • 创建一个表示按 z 轴旋转指定弧度角度的旋转矩阵。

    Parameters

    • angle: number

      旋转弧度角度

    Returns Matrix

    创建的旋转矩阵

Static Scaling

  • 创建一个缩放矩阵。

    Parameters

    Returns Matrix

    创建的缩放变换矩阵

  • 创建一个缩放矩阵。

    Parameters

    • x: number

      沿 x 轴缩放系数

    • y: number

      沿 y 轴缩放系数

    • z: number

      沿 z 轴缩放系数

    Returns Matrix

    创建的缩放变换矩阵

Static Translation

  • 创建一个平移矩阵。

    Parameters

    Returns Matrix

    创建的平移矩阵

  • 创建一个平移矩阵。

    Parameters

    • x: number

      沿 x 轴平移距离

    • y: number

      沿 y 轴平移距离

    • z: number

      沿 z 轴平移距离

    Returns Matrix

    创建的平移矩阵

Static Zero

  • 创建一个零矩阵。

    Returns Matrix

    新创建的零矩阵