Matrix Structure | 
Defines a 4x4 matrix.
A default constructed one is Zero.
You are unlikely to ever directly construct one, you'd use one of the static methods returning a Matrix, e.g. RotationAxis(Vector3, Double)
Namespace: Microsoft.DirectX
[SerializableAttribute] public struct Matrix : IEquatable<Matrix>
The Matrix type exposes the following members.
| Name | Description | |
|---|---|---|
| Inverted | 
            Invert this Matrix  | |
| Origin | 
            The Origin of the Matrix  | |
| OriginX | 
            The X component of Origin as a Single  | |
| OriginXD | 
            The X component of Origin as a Double  | |
| OriginY | 
            The Y component of Origin as a Single  | |
| OriginYD | 
            The Y component of Origin as a Double  | |
| OriginZ | 
            The Z component of Origin as a Single  | |
| OriginZD | 
            The Z component of Origin as a Double  | |
| Transposed | 
            Transpose this Matrix  | |
| XAxis | 
            The X-Axis of the Matrix  | |
| YAxis | 
            The Y-Axis of the Matrix  | |
| ZAxis | 
            The Z-Axis of the Matrix  | 
| Name | Description | |
|---|---|---|
| Add | Matrix addition
              | |
| Equals(Matrix) | Matrix exact equality - see EQ(Matrix, Matrix) for alternative
              | |
| Equals(Object) | Matrix exact equality - see EQ(Matrix, Matrix) for alternative
              (Overrides ValueTypeEquals(Object).) | |
| GetHashCode | 
            Returns the hash code for the current Matrix.
              (Overrides ValueTypeGetHashCode.) | |
| Invert | 
            Invert this Matrix  | |
| Invert(Matrix) | 
            Invert given Matrix  | |
| Multiply(Matrix) | Matrix multiplication
              | |
| Multiply(Matrix, Matrix) | Matrix multiplication
              | |
| RotationAxis(Vector3, Double) | 
            Form a rotation Matrix rotating about given axis
              | |
| RotationAxis(Vector3, Double, Vector3) | 
            Form a rotation Matrix rotating about given axis, offset from the origin
              | |
| RotationAxisDegrees(Vector3, Double) | 
            Form a rotation Matrix rotating about given axis
              | |
| RotationAxisDegrees(Vector3, Double, Vector3) | 
            Form a rotation Matrix rotating about given axis, offset from the origin
              | |
| RotationQuaternion | 
            Form a rotation Matrix from Quaternion  | |
| RotationX(Double) | 
            Form a rotation Matrix rotating about the X-Axis
              | |
| RotationX(Double, Vector3) | 
            Form a rotation Matrix rotating about the X-Axis, offset from the origin
              | |
| RotationXDegrees(Double) | 
            Form a rotation Matrix rotating about the X-Axis
              | |
| RotationXDegrees(Double, Vector3) | 
            Form a rotation Matrix rotating about the X-Axis, offset from the origin
              | |
| RotationY(Double) | 
            Form a rotation Matrix rotating about the Y-Axis
              | |
| RotationY(Double, Vector3) | 
            Form a rotation Matrix rotating about the Y-Axis, offset from the origin
              | |
| RotationYawPitchRoll(Vector3) | ||
| RotationYawPitchRoll(Vector3, Vector3) | ||
| RotationYawPitchRoll(Double, Double, Double) | 
            Form a rotation Matrix from Yaw (Y-Axis rotation), Pitch (X-Axis rotation) and Roll (Z-Axis rotation)
              | |
| RotationYawPitchRoll(Double, Double, Double, Vector3) | 
            Form a rotation Matrix from Yaw (Y-Axis rotation), Pitch (X-Axis rotation) and Roll (Z-Axis rotation), offset from the origin
              | |
| RotationYawPitchRollDegrees(Vector3) | ||
| RotationYawPitchRollDegrees(Vector3, Vector3) | ||
| RotationYawPitchRollDegrees(Double, Double, Double) | 
            Form a rotation Matrix from Yaw (Y-Axis rotation), Pitch (X-Axis rotation) and Roll (Z-Axis rotation)
              | |
| RotationYawPitchRollDegrees(Double, Double, Double, Vector3) | 
            Form a rotation Matrix from Yaw (Y-Axis rotation), Pitch (X-Axis rotation) and Roll (Z-Axis rotation), offset from the origin
              | |
| RotationYDegrees(Double) | 
            Form a rotation Matrix rotating about the Y-Axis
              | |
| RotationYDegrees(Double, Vector3) | 
            Form a rotation Matrix rotating about the Y-Axis, offset from the origin
              | |
| RotationZ(Double) | 
            Form a rotation Matrix rotating about the Z-Axis
              | |
| RotationZ(Double, Vector3) | 
            Form a rotation Matrix rotating about the Z-Axis, offset from the origin
              | |
| RotationZDegrees(Double) | 
            Form a rotation Matrix rotating about the Z-Axis
              | |
| RotationZDegrees(Double, Vector3) | 
            Form a rotation Matrix rotating about the Z-Axis, offset from the origin
              | |
| Scaling(Double) | 
            Form a scaling Matrix  | |
| Scaling(Vector3) | 
            Form a scaling Matrix  | |
| Scaling(Double, Double, Double) | 
            Form a scaling Matrix  | |
| Subtract | Matrix subtraction
              | |
| ToString | 
            Returns a string that represents the current Matrix.
              (Overrides ValueTypeToString.) | |
| Transform(Plane) | 
            Transform Plane by this Matrix  | |
| Transform(Vector2) | 
            Transforms a Vector2 by this Matrix  | |
| Transform(Vector3) | 
            Transforms a Vector3 by this Matrix  | |
| Transform(Vector4) | 
            Transforms a Vector4 by this Matrix  | |
| TransformCoordinate(Vector2) | 
            Transform Vector2 coordinate by this Matrix  | |
| TransformCoordinate(Vector3) | 
            Transform Vector3 coordinate by this Matrix  | |
| TransformNormal(Vector2) | 
            Transform Vector2 normal by this Matrix  | |
| TransformNormal(Vector3) | 
            Transform Vector3 normal by this Matrix  | |
| Translation(Vector3) | 
            Form a translation Matrix  | |
| Translation(Double, Double, Double) | 
            Form a translation Matrix  | |
| Transpose | 
            Transpose this Matrix  | |
| Transpose(Matrix) | 
            Transpose given Matrix  | 
| Name | Description | |
|---|---|---|
| Addition | Matrix addition
              | |
| Equality | Matrix exact equality - see EQ(Matrix, Matrix) for alternative
              | |
| Inequality | Matrix exact inequality - see EQ(Matrix, Matrix) for alternative
              | |
| Multiply | Matrix multiplication
              | |
| Subtraction | Matrix subtraction
              | 
| Name | Description | |
|---|---|---|
| Identity | 
            A Matrix representing the "Identity" matrix
              | |
| RotationX0 | 
            Equivalent to Identity  | |
| RotationX180 | 
            Precomputed rotation Matrix of 180 degrees (or -180 degrees) about the X-Axis
              | |
| RotationX270 | 
            Precomputed rotation Matrix of 270 degrees (or -90 degrees) about the X-Axis
              | |
| RotationX360 | 
            Equivalent to Identity  | |
| RotationX90 | 
            Precomputed rotation Matrix of 90 degrees (or -270 degrees) about the X-Axis
              | |
| RotationY0 | 
            Equivalent to Identity  | |
| RotationY180 | 
            Precomputed rotation Matrix of 180 degrees (or -180 degrees) about the Y-Axis
              | |
| RotationY270 | 
            Precomputed rotation Matrix of 270 degrees (or -90 degrees) about the Y-Axis
              | |
| RotationY360 | 
            Equivalent to Identity  | |
| RotationY90 | 
            Precomputed rotation Matrix of 90 degrees (or -270 degrees) about the Y-Axis
              | |
| RotationZ0 | 
            Equivalent to Identity  | |
| RotationZ180 | 
            Precomputed rotation Matrix of 180 degrees (or -180 degrees) about the Y-Axis
              | |
| RotationZ270 | 
            Precomputed rotation Matrix of 270 degrees (or -90 degrees) about the Z-Axis
              | |
| RotationZ360 | 
            Equivalent to Identity  | |
| RotationZ90 | 
            Precomputed rotation Matrix of 90 degrees (or -270 degrees) about the Z-Axis
              | |
| Zero | 
            A Matrix with all of its components set to zero.
              |