Class Matrix4x4

Matrix4x4 类表示一个转换矩阵,该矩阵确定三维 (3D) 显示对象的位置和方向。 该矩阵可以执行转换功能,包括平移(沿 x、y 和 z 轴重新定位)、旋转和缩放(调整大小)。 Matrix4x4 类还可以执行透视投影,这会将 3D 坐标空间中的点映射到二维 (2D) 视图。

 ---                                   ---
| scaleX 0 0 0 | x轴
| 0 scaleY 0 0 | y轴
| 0 0 scaleZ 0 | z轴
| tx ty tz 1 | 平移
--- ---

--- ---
| 0 1 2 3 | x轴
| 4 5 6 7 | y轴
| 8 9 10 11 | z轴
| 12 13 14 15 | 平移
--- ---

Hierarchy

  • Matrix4x4

Constructors

  • 创建 Matrix4x4 对象。

    Parameters

    • Optional rawData: Number16

      一个由 16 个数字组成的矢量,其中,每四个元素可以是 4x4 矩阵的一列。

    Returns Matrix4x4

Properties

elements: Number16

一个由 16 个数字组成的矢量,其中,每四个元素可以是 4x4 矩阵的一列。

Accessors

  • get determinant(): number
  • 一个用于确定矩阵是否可逆的数字。如果值为0则不可逆。

    Returns number

Methods

  • 通过将另一个 Matrix4x4 对象与当前 Matrix4x4 对象相乘来后置一个矩阵。

    Parameters

    • lhs: Number16 | {
          elements: Number16;
      }

    Returns Matrix4x4

  • 在 Matrix4x4 对象上后置一个增量旋转。

    Parameters

    • axis: Vector3

      旋转轴

    • degrees: number

      角度

    • Optional pivotPoint: Vector3

      旋转中心点

    Returns Matrix4x4

  • 在 Matrix4x4 对象上后置一个增量缩放,沿 x、y 和 z 轴改变位置。

    Parameters

    • sx: number

      用于沿 x 轴缩放对象的乘数。

    • sy: number

      用于沿 y 轴缩放对象的乘数。

    • sz: number

      用于沿 z 轴缩放对象的乘数。

    Returns Matrix4x4

  • 在 Matrix4x4 对象上后置一个增量平移,沿 x、y 和 z 轴重新定位。

    Parameters

    • x: number

      沿 x 轴的增量平移。

    • y: number

      沿 y 轴的增量平移。

    • z: number

      沿 z 轴的增量平移。

    Returns Matrix4x4

  • 返回一个新 Matrix4x4 对象,它是与当前 Matrix4x4 对象完全相同的副本。

    Returns Matrix4x4

  • 将源 Matrix4x4 对象中的所有矩阵数据复制到调用方 Matrix4x4 对象中。

    Parameters

    • source: Matrix4x4

      要从中复制数据的 Matrix4x4 对象。

    Returns Matrix4x4

  • 比较矩阵是否相等

    Parameters

    • matrix: Matrix4x4
    • Optional precision: number

    Returns boolean

  • 从数组中初始化

    Parameters

    • array: number[]

      包含矩阵数据的数组

    • Optional index: number

      数组中的起始位置

    • Optional transpose: boolean

      是否转置

    Returns Matrix4x4

  • 从轴与旋转角度创建矩阵

    Parameters

    • axis: Vector3

      旋转轴

    • degrees: number

      角度

    Returns Matrix4x4

  • 创建位移矩阵

    Parameters

    • x: number

      沿 x 轴的增量平移。

    • y: number

      沿 y 轴的增量平移。

    • z: number

      沿 z 轴的增量平移。

    Returns Matrix4x4

  • 从四元素初始化矩阵。

    Parameters

    Returns Matrix4x4

  • 从欧拉角旋转角度初始化矩阵。

    Parameters

    • rx: number

      用于沿 x 轴旋转对象的角度。

    • ry: number

      用于沿 y 轴旋转对象的角度。

    • rz: number

      用于沿 z 轴旋转对象的角度。

    • Optional order: RotationOrder

      绕轴旋转的顺序。

    Returns Matrix4x4

  • 创建缩放矩阵

    Parameters

    • sx: number

      用于沿 x 轴缩放对象的乘数。

    • sy: number

      用于沿 y 轴缩放对象的乘数。

    • sz: number

      用于沿 z 轴缩放对象的乘数。

    Returns Matrix4x4

  • 通过位移旋转缩放重组矩阵

    Parameters

    • position: Vector3

      位移

    • rotation: Vector3

      旋转角度,按照指定旋转顺序旋转角度。

    • scale: Vector3

      缩放。

    • Optional order: RotationOrder

      旋转顺序。

    Returns Matrix4x4

  • 获取X轴向量

    Parameters

    • Optional out: Vector3

      保存X轴向量

    Returns Vector3

  • 获取Y轴向量

    Parameters

    • Optional out: Vector3

      保存Y轴向量

    Returns Vector3

  • 获取Z轴向量

    Parameters

    • Optional out: Vector3

      保存Z轴向量

    Returns Vector3

  • 获取XYZ轴中最大缩放值

    Returns number

  • 获取位移

    Parameters

    • Optional value: Vector3

      用于存储位移信息的向量

    Returns Vector3

  • 获取欧拉旋转角度。

    Parameters

    • Optional rotation: Vector3

      欧拉旋转角度。

    • Optional order: RotationOrder

      绕轴旋转的顺序。

    Returns Vector3

  • 获取缩放值。

    Parameters

    • Optional scale: Vector3

      用于存储缩放值的向量。

    Returns Vector3

  • 将当前矩阵转换为恒等或单位矩阵。

    Returns Matrix4x4

  • 反转当前矩阵。逆矩阵

    Returns Matrix4x4

    如果成功反转矩阵,则返回 该矩阵。

  • 看向目标位置

    Parameters

    Returns Matrix4x4

  • Z轴方向移动

    Parameters

    • distance: number

      移动距离

    Returns Matrix4x4

  • X轴方向移动

    Parameters

    • distance: number

      移动距离

    Returns Matrix4x4

  • Y轴方向移动

    Parameters

    • distance: number

      移动距离

    Returns Matrix4x4

  • 通过将当前 Matrix4x4 对象与另一个 Matrix4x4 对象相乘来前置一个矩阵。得到的结果将合并两个矩阵转换。

    Parameters

    • rhs: Matrix4x4

      个右侧矩阵,它与当前 Matrix4x4 对象相乘。

    Returns Matrix4x4

  • 在 Matrix4x4 对象上前置一个增量旋转。在将 Matrix4x4 对象应用于显示对象时,矩阵会在 Matrix4x4 对象中先执行旋转,然后再执行其他转换。

    Parameters

    • axis: Vector3

      旋转的轴或方向。常见的轴为 X_AXIS (Vector3(1,0,0))、Y_AXIS (Vector3(0,1,0)) 和 Z_AXIS (Vector3(0,0,1))。此矢量的长度应为 1。

    • degrees: number

      旋转的角度。

    • Optional _pivotPoint: Vector3

    Returns Matrix4x4

  • 在 Matrix4x4 对象上前置一个增量缩放,沿 x、y 和 z 轴改变位置。在将 Matrix4x4 对象应用于显示对象时,矩阵会在 Matrix4x4 对象中先执行缩放更改,然后再执行其他转换。

    Parameters

    • xScale: number

      用于沿 x 轴缩放对象的乘数。

    • yScale: number

      用于沿 y 轴缩放对象的乘数。

    • zScale: number

      用于沿 z 轴缩放对象的乘数。

    Returns Matrix4x4

  • Parameters

    • xScale: number
    • yScale: number
    • zScale: number

    Returns Matrix4x4

  • 在 Matrix4x4 对象上前置一个增量平移,沿 x、y 和 z 轴重新定位。在将 Matrix4x4 对象应用于显示对象时,矩阵会在 Matrix4x4 对象中先执行平移更改,然后再执行其他转换。

    Parameters

    • x: number

      沿 x 轴的增量平移。

    • y: number

      沿 y 轴的增量平移。

    • z: number

      沿 z 轴的增量平移。

    Returns Matrix4x4

  • 随机矩阵。

    Returns Matrix4x4

  • 设置X轴向量

    Parameters

    • Optional vector: Vector3

      X轴向量

    Returns Matrix4x4

  • 设置Y轴向量

    Parameters

    • Optional vector: Vector3

      X轴向量

    Returns Matrix4x4

  • 初始化正射投影矩阵

    Parameters

    • left: number

      可视空间左边界

    • right: number

      可视空间右边界

    • top: number

      可视空间上边界

    • bottom: number

      可视空间下边界

    • near: number

      可视空间近边界

    • far: number

      可视空间远边界

      可视空间的八个顶点分别被投影到立方体 [(-1, -1, -1), (1, 1, 1)] 八个顶点上

      将长方体 [(left, bottom, near), (right, top, far)] 投影至立方体 [(-1, -1, -1), (1, 1, 1)] 中

    Returns Matrix4x4

  • 初始化透视投影矩阵

    Parameters

    • left: number

      可视空间左边界

    • right: number

      可视空间右边界

    • top: number

      可视空间上边界

    • bottom: number

      可视空间下边界

    • near: number

      可视空间近边界

    • far: number

      可视空间远边界

      可视空间的八个顶点分别被投影到立方体 [(-1, -1, -1), (1, 1, 1)] 八个顶点上

      将长方体 [(left, bottom, near), (right, top, far)] 投影至立方体 [(-1, -1, -1), (1, 1, 1)] 中

    Returns Matrix4x4

  • 初始化透视投影矩阵

    Parameters

    • fov: number

      垂直视角,视锥体顶面和底面间的夹角,必须大于0 (角度)

    • aspect: number

      近裁剪面的宽高比

    • near: number

      视锥体近边界

    • far: number

      视锥体远边界

      视锥体的八个顶点分别被投影到立方体 [(-1, -1, -1), (1, 1, 1)] 八个顶点上

    Returns Matrix4x4

  • 设置位移

    Parameters

    Returns Matrix4x4

  • 设置欧拉旋转角度。

    Parameters

    Returns Matrix4x4

  • 获取缩放值。

    Parameters

    Returns Matrix4x4

  • 将矩阵数据转换为数组

    Parameters

    • Optional array: number[] | Float32Array

      保存矩阵数据的数组

    • Optional index: number

      数组中的起始位置

    • Optional transpose: boolean

      是否转置

    Returns number[] | Float32Array

  • 转换为3x3矩阵

    Parameters

    Returns Matrix3x3

  • 以字符串返回矩阵的值

    Returns string

  • 把矩阵分解为位移旋转缩放。

    Parameters

    • Optional position: Vector3

      位移

    • Optional rotation: Vector3

      旋转角度,按照指定旋转顺序旋转。

    • Optional scale: Vector3

      缩放。

    • Optional order: RotationOrder

      旋转顺序。

    Returns Vector3[]

  • 使用转换矩阵将 Vector3 对象从一个空间坐标转换到另一个空间坐标。

    Parameters

    • vIn: Vector3

      一个容纳要转换的坐标的 Vector3 对象。

    • Optional vOut: Vector3

    Returns Vector3

    一个包含转换后的坐标的 Vector3 对象。

  • 变换坐标数组数据

    Parameters

    • vIn: number[]

      被变换坐标数组数据

    • Optional vOut: number[]

      变换后的坐标数组数据

    Returns number[]

  • 使用转换矩阵将 Ray3 对象从一个空间坐标转换到另一个空间坐标。

    Parameters

    • inRay: Ray3

      被转换的Ray3。

    • Optional outRay: Ray3

      转换后的Ray3。

    Returns Ray3

    转换后的Ray3。

  • 变换旋转角度

    Parameters

    • vIn: Vector3

      被变换的旋转角度

    • Optional vOut: Vector3

      变换后的旋转角度

    Returns Vector3

  • 变换Vector3向量

    与变换点不同,并不会受到矩阵平移分量的影响。

    Parameters

    • vIn: Vector3

      被变换的向量

    • Optional vOut: Vector3

      变换后的向量

    Returns Vector3

  • 变换Vector4向量

    Parameters

    • vIn: Vector4

      被变换的向量

    • Optional vOut: Vector4

      变换后的向量

    Returns Vector4

  • 将当前 Matrix4x4 对象转换为一个矩阵,并将互换其中的行和列。

    Returns Matrix4x4

Generated using TypeDoc