Matrix4x4 Structure
Represents a 4x4 matrix.
Assembly: System.Numerics (in System.Numerics.dll)
| Name | Description | |
|---|---|---|
![]() | Matrix4x4(Matrix3x2) | Creates a Matrix4x4 object from a specified Matrix3x2 object. |
![]() | Matrix4x4(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single) | Creates a 4x4 matrix from the specified components. |
| Name | Description | |
|---|---|---|
![]() ![]() | Identity | Gets the multiplicative identity matrix. |
![]() | IsIdentity | Indicates whether the current matrix is the identity matrix. |
![]() | Translation | Gets or sets the translation component of this matrix. |
| Name | Description | |
|---|---|---|
![]() ![]() | Add(Matrix4x4, Matrix4x4) | Adds each element in one matrix with its corresponding element in a second matrix. |
![]() ![]() | CreateBillboard(Vector3, Vector3, Vector3, Vector3) | Creates a spherical billboard that rotates around a specified object position. |
![]() ![]() | CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3) | Creates a cylindrical billboard that rotates around a specified axis. |
![]() ![]() | CreateFromAxisAngle(Vector3, Single) | Creates a matrix that rotates around an arbitrary vector. |
![]() ![]() | CreateFromQuaternion(Quaternion) | Creates a rotation matrix from the specified Quaternion rotation value. |
![]() ![]() | CreateFromYawPitchRoll(Single, Single, Single) | Creates a rotation matrix from the specified yaw, pitch, and roll. |
![]() ![]() | CreateLookAt(Vector3, Vector3, Vector3) | Creates a view matrix. |
![]() ![]() | CreateOrthographic(Single, Single, Single, Single) | Creates an orthographic perspective matrix from the given view volume dimensions. |
![]() ![]() | CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single) | Creates a customized orthographic projection matrix. |
![]() ![]() | CreatePerspective(Single, Single, Single, Single) | Creates a perspective projection matrix from the given view volume dimensions. |
![]() ![]() | CreatePerspectiveFieldOfView(Single, Single, Single, Single) | Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. |
![]() ![]() | CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single) | Creates a customized perspective projection matrix. |
![]() ![]() | CreateReflection(Plane) | Creates a matrix that reflects the coordinate system about a specified plane. |
![]() ![]() | CreateRotationX(Single) | Creates a matrix for rotating points around the X axis. |
![]() ![]() | CreateRotationX(Single, Vector3) | Creates a matrix for rotating points around the X axis from a center point. |
![]() ![]() | CreateRotationY(Single) | Creates a matrix for rotating points around the Y axis. |
![]() ![]() | CreateRotationY(Single, Vector3) | The amount, in radians, by which to rotate around the Y axis from a center point. |
![]() ![]() | CreateRotationZ(Single) | Creates a matrix for rotating points around the Z axis. |
![]() ![]() | CreateRotationZ(Single, Vector3) | Creates a matrix for rotating points around the Z axis from a center point. |
![]() ![]() | CreateScale(Single) | Creates a uniform scaling matrix that scale equally on each axis. |
![]() ![]() | CreateScale(Single, Single, Single) | Creates a scaling matrix from the specified X, Y, and Z components. |
![]() ![]() | CreateScale(Single, Single, Single, Vector3) | Creates a scaling matrix that is offset by a given center point. |
![]() ![]() | CreateScale(Single, Vector3) | Creates a uniform scaling matrix that scales equally on each axis with a center point. |
![]() ![]() | CreateScale(Vector3) | Creates a scaling matrix from the specified vector scale. |
![]() ![]() | CreateScale(Vector3, Vector3) | Creates a scaling matrix with a center point. |
![]() ![]() | CreateShadow(Vector3, Plane) | Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. |
![]() ![]() | CreateTranslation(Single, Single, Single) | Creates a translation matrix from the specified X, Y, and Z components. |
![]() ![]() | CreateTranslation(Vector3) | Creates a translation matrix from the specified 3-dimensional vector. |
![]() ![]() | CreateWorld(Vector3, Vector3, Vector3) | Creates a world matrix with the specified parameters. |
![]() ![]() | Decompose(Matrix4x4, Vector3%, Quaternion%, Vector3%) | Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. |
![]() | Equals(Matrix4x4) | Returns a value that indicates whether this instance and another 4x4 matrix are equal. |
![]() | Equals(Object^) | Returns a value that indicates whether this instance and a specified object are equal. (Overrides ValueType::Equals(Object^).) |
![]() | GetDeterminant() | Calculates the determinant of the current 4x4 matrix. |
![]() | GetHashCode() | Returns the hash code for this instance. (Overrides ValueType::GetHashCode().) |
![]() | GetType() | |
![]() ![]() | Invert(Matrix4x4, Matrix4x4%) | Inverts the specified matrix. The return value indicates whether the operation succeeded. |
![]() ![]() | Lerp(Matrix4x4, Matrix4x4, Single) | Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. |
![]() ![]() | Multiply(Matrix4x4, Matrix4x4) | Returns the matrix that results from multiplying two matrices together. |
![]() ![]() | Multiply(Matrix4x4, Single) | Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. |
![]() ![]() | Negate(Matrix4x4) | Negates the specified matrix by multiplying all its values by -1. |
![]() ![]() | Subtract(Matrix4x4, Matrix4x4) | Subtracts each element in a second matrix from its corresponding element in a first matrix. |
![]() | ToString() | Returns a string that represents this matrix. (Overrides ValueType::ToString().) |
![]() ![]() | Transform(Matrix4x4, Quaternion) | Transforms the specified matrix by applying the specified Quaternion rotation. |
![]() ![]() | Transpose(Matrix4x4) | Transposes the rows and columns of a matrix. |
| Name | Description | |
|---|---|---|
![]() | M11 | The first element of the first row. |
![]() | M12 | The second element of the first row. |
![]() | M13 | The third element of the first row. |
![]() | M14 | The fourth element of the first row. |
![]() | M21 | The first element of the second row. |
![]() | M22 | The second element of the second row. |
![]() | M23 | The third element of the second row. |
![]() | M24 | The fourth element of the second row. |
![]() | M31 | The first element of the third row. |
![]() | M32 | The second element of the third row. |
![]() | M33 | The third element of the third row. |
![]() | M34 | The fourth element of the third row. |
![]() | M41 | The first element of the fourth row. |
![]() | M42 | The second element of the fourth row. |
![]() | M43 | The third element of the fourth row. |
![]() | M44 | The fourth element of the fourth row. |
| Name | Description | |
|---|---|---|
![]() ![]() | Addition(Matrix4x4, Matrix4x4) | Adds each element in one matrix with its corresponding element in a second matrix. |
![]() ![]() | Equality(Matrix4x4, Matrix4x4) | Returns a value that indicates whether the specified matrices are equal. |
![]() ![]() | Inequality(Matrix4x4, Matrix4x4) | Returns a value that indicates whether the specified matrices are not equal. |
![]() ![]() | Multiply(Matrix4x4, Matrix4x4) | Returns the matrix that results from multiplying two matrices together. |
![]() ![]() | Multiply(Matrix4x4, Single) | Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. |
![]() ![]() | Subtraction(Matrix4x4, Matrix4x4) | Subtracts each element in a second matrix from its corresponding element in a first matrix. |
![]() ![]() | UnaryNegation(Matrix4x4) | Negates the specified matrix by multiplying all its values by -1. |
Available since 10
.NET Framework
Available since 4.6
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.




