Matrix4x4 结构

定义

表示 4x4 矩阵。

public value class Matrix4x4 : IEquatable<System::Numerics::Matrix4x4>
public struct Matrix4x4 : IEquatable<System.Numerics.Matrix4x4>
type Matrix4x4 = struct
Public Structure Matrix4x4
Implements IEquatable(Of Matrix4x4)
继承
Matrix4x4
实现

注解

对于矩阵转换,Vector2Vector3Vector4 实例表示为行:矩阵 M 使用 vM 乘法转换矢量 v

构造函数

Matrix4x4(Matrix3x2)

从指定的 Matrix3x2 对象创建 Matrix4x4 对象。

Matrix4x4(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single)

从指定分量创建 4x4 矩阵。

字段

M11

第一行的第一个元素。

M12

第一行的第二个元素。

M13

第一行的第三个元素。

M14

第一行的第四个元素。

M21

第二行的第一个元素。

M22

第二行的第二个元素。

M23

第二行的第三个元素。

M24

第二行的第四个元素。

M31

第三行的第一个元素。

M32

第三行的第二个元素。

M33

第三行的第三个元素。

M34

第三行的第四个元素。

M41

第四行的第一个元素。

M42

第四行的第二个元素。

M43

第四行的第三个元素。

M44

第四行的第四个元素。

属性

Identity

获取乘法单位矩阵。

IsIdentity

指示当前矩阵是否为单位矩阵。

Item[Int32, Int32]

获取或设置指定索引处的 元素。

Translation

获取或设置此矩阵的平移分量。

方法

Add(Matrix4x4, Matrix4x4)

将一个矩阵中的每个元素与第二个矩阵中的对应元素相加。

CreateBillboard(Vector3, Vector3, Vector3, Vector3)

创建围绕指定对象位置旋转的球状宣传位置。

CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3)

创建围绕指定轴旋转的圆柱宣传位置。

CreateFromAxisAngle(Vector3, Single)

创建围绕任意向量旋转的矩阵。

CreateFromQuaternion(Quaternion)

从指定四元数旋转值创建旋转矩阵。

CreateFromYawPitchRoll(Single, Single, Single)

从指定的绕 Y 轴旋转、绕 X 轴旋转和绕 Z 轴旋转创建旋转矩阵。

CreateLookAt(Vector3, Vector3, Vector3)

创建视图矩阵。

CreateLookAtLeftHanded(Vector3, Vector3, Vector3)

创建左手视图矩阵。

CreateLookTo(Vector3, Vector3, Vector3)

创建右手视图矩阵。

CreateLookToLeftHanded(Vector3, Vector3, Vector3)

创建左手视图矩阵。

CreateOrthographic(Single, Single, Single, Single)

从给定视图体维度创建正交透视矩阵。

CreateOrthographicLeftHanded(Single, Single, Single, Single)

从给定的视图体积维度创建左手正交透视矩阵。

CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single)

创建自定义正交投影矩阵。

CreateOrthographicOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

创建左手自定义正交投影矩阵。

CreatePerspective(Single, Single, Single, Single)

从给定视图体维度创建透视投影矩阵。

CreatePerspectiveFieldOfView(Single, Single, Single, Single)

基于视野、纵横比以及近和远视图平面距离创建透视投影矩阵。

CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single)

基于视野、纵横比以及近视图和远视图平面距离创建左手透视投影矩阵。

CreatePerspectiveLeftHanded(Single, Single, Single, Single)

从给定的视图体积维度创建左手透视投影矩阵。

CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single)

创建自定义透视投影矩阵。

CreatePerspectiveOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

创建左手自定义透视投影矩阵。

CreateReflection(Plane)

创建围绕指定平面反射坐标系统的矩阵。

CreateRotationX(Single)

创建用于围绕 X 轴旋转的矩阵。

CreateRotationX(Single, Vector3)

创建用于从中心点围绕 X 轴旋转的矩阵。

CreateRotationY(Single)

创建用于围绕 Y 轴旋转的矩阵。

CreateRotationY(Single, Vector3)

要从中心点围绕 Y 轴旋转的量(以弧度表示)。

CreateRotationZ(Single)

创建用于围绕 Z 轴旋转的矩阵。

CreateRotationZ(Single, Vector3)

创建用于从中心点围绕 Z 轴旋转的矩阵。

CreateScale(Single)

创建在每个轴上均匀缩放的统一缩放矩阵。

CreateScale(Single, Single, Single)

从指定 X、Y 和 Z 分量创建缩放矩阵。

CreateScale(Single, Single, Single, Vector3)

创建按给定中心点偏移的缩放矩阵。

CreateScale(Single, Vector3)

创建具有中心点并且在每个轴上均匀缩放的统一缩放矩阵。

CreateScale(Vector3)

从指定向量比例创建缩放矩阵。

CreateScale(Vector3, Vector3)

创建具有中心点的缩放矩阵。

CreateShadow(Vector3, Plane)

创建将几何图形平展到指定平面中(如同从指定光源进行投影)的矩阵。

CreateTranslation(Single, Single, Single)

从指定 X、Y 和 Z 分量创建平移矩阵。

CreateTranslation(Vector3)

从指定三维向量创建平移矩阵。

CreateViewport(Single, Single, Single, Single, Single, Single)

从指定的参数创建右手视区矩阵。

CreateViewportLeftHanded(Single, Single, Single, Single, Single, Single)

从指定的参数创建左手视区矩阵。

CreateWorld(Vector3, Vector3, Vector3)

使用指定参数创建世界矩阵。

Decompose(Matrix4x4, Vector3, Quaternion, Vector3)

尝试从给定缩放、旋转或平移矩阵中提取缩放、平移和旋转分量。 返回值指示操作是否成功。

Equals(Matrix4x4)

返回一个值,该值指示此实例是否与另一个 4x4 矩阵相等。

Equals(Object)

返回一个值,该值指示此实例是否与指定对象相等。

GetDeterminant()

计算当前 4x4 矩阵的行列式。

GetHashCode()

返回此实例的哈希代码。

Invert(Matrix4x4, Matrix4x4)

对指定矩阵求逆。 返回值指示操作是否成功。

Lerp(Matrix4x4, Matrix4x4, Single)

基于指定第二个矩阵的权重的值,从一个矩阵向第二个矩阵执行线性内插。

Multiply(Matrix4x4, Matrix4x4)

返回将两个矩阵相乘得到的矩阵。

Multiply(Matrix4x4, Single)

返回按标量系数缩放指定矩阵的所有元素后得到的矩阵。

Negate(Matrix4x4)

通过将其所有值乘以 -1,对指定矩阵求反。

Subtract(Matrix4x4, Matrix4x4)

从第一个矩阵中的每个元素中减去第二个矩阵中的对应元素。

ToString()

返回表示此矩阵的字符串。

Transform(Matrix4x4, Quaternion)

通过应用指定四元数旋转来转换指定矩阵。

Transpose(Matrix4x4)

转置矩阵的行和列。

运算符

Addition(Matrix4x4, Matrix4x4)

将一个矩阵中的每个元素与第二个矩阵中的对应元素相加。

Equality(Matrix4x4, Matrix4x4)

返回一个值,该值指示指定矩阵是否相等。

Inequality(Matrix4x4, Matrix4x4)

返回一个值,该值指示指定矩阵是否不相等。

Multiply(Matrix4x4, Matrix4x4)

返回将两个矩阵相乘得到的矩阵。

Multiply(Matrix4x4, Single)

返回按标量系数缩放指定矩阵的所有元素后得到的矩阵。

Subtraction(Matrix4x4, Matrix4x4)

从第一个矩阵中的每个元素中减去第二个矩阵中的对应元素。

UnaryNegation(Matrix4x4)

通过将其所有值乘以 -1,对指定矩阵求反。

适用于