Matrix |
public struct Matrix3x3 : IEquatable<Matrix3x3>
The Matrix3x3 type exposes the following members.
| Name | Description | |
|---|---|---|
| Matrix3x3(Matrix4x4) | Constructs a new Matrix3x3. | |
| Matrix3x3(Single, Single, Single, Single, Single, Single, Single, Single, Single) | Represents a 3x3 matrix. Assimp docs say their matrices are always row-major, and it looks like they're only describing the memory layout. Matrices are treated as column vectors however (X base in the first column, Y base the second, and Z base the third) |
| Name | Description | |
|---|---|---|
| A1 | Value at row 1, column 1 of the matrix. | |
| A2 | Value at row 1, column 2 of the matrix. | |
| A3 | Value at row 1, column 3 of the matrix. | |
| B1 | Value at row 2, column 1 of the matrix. | |
| B2 | Value at row 2, column 2 of the matrix. | |
| B3 | Value at row 2, column 3 of the matrix. | |
| C1 | Value at row 3, column 1 of the matrix. | |
| C2 | Value at row 3, column 2 of the matrix. | |
| C3 | Value at row 3, column 3 of the matrix. | |
| Identity | Gets the identity matrix. | |
| IsIdentity | Gets if this matrix is an identity matrix. | |
| Item | Gets or sets the value at the specific one-based row, column index. E.g. i = 1, j = 2 gets the value in row 1, column 2 (MA2). Indices out of range return a value of zero. |
| Name | Description | |
|---|---|---|
| Determinant | Compute the determinant of this matrix. | |
| FromAngleAxis | Creates a rotation matrix for a rotation about an arbitrary axis. | |
| FromEulerAnglesXYZ(Vector3) | Creates a rotation matrix from a set of euler angles. | |
| FromEulerAnglesXYZ(Single, Single, Single) | Creates a rotation matrix from a set of euler angles. | |
| FromRotationX | Creates a rotation matrix for a rotation about the x-axis. | |
| FromRotationY | Creates a rotation matrix for a rotation about the y-axis. | |
| FromRotationZ | Creates a rotation matrix for a rotation about the z-axis. | |
| FromScaling | Creates a scaling matrix. | |
| FromToMatrix |
Creates a rotation matrix that rotates a vector called "from" into another
vector called "to". Based on an algorithm by Tomas Moller and John Hudges:
"Efficiently Building a Matrix to Rotate One Vector to Another" Journal of Graphics Tools, 4(4):1-4, 1999 | |
| GetType | Gets the Type of the current instance. (Inherited from Object) | |
| Inverse | Inverts the matrix. If the matrix is *not* invertible all elements are set to NaN. | |
| ToString |
Returns a String that represents this instance.
(Overrides ValueTypeToString) | |
| Transform | Performs matrix-vector multiplication identical to the way Assimp does it. | |
| Transpose | Transposes this matrix (rows become columns, vice versa). |
| Name | Description | |
|---|---|---|
| (Matrix3x3 to Matrix4x4) | Implicit conversion from a 3x3 matrix to a 4x4 matrix. | |
| (Matrix4x4 to Matrix3x3) | Implicit conversion from a 4x4 matrix to a 3x3 matrix. | |
| Multiply(Matrix3x3, Matrix3x3) | Performs matrix multiplication.Multiplication order is B x A. That way, SRT concatenations are left to right. |
| Name | Description | |
|---|---|---|
| MethodInvoke |
Calls the object method by name.
(Defined by ObjectEx) | |
| PropertyGet |
Gets the value of the object property by name.
(Defined by ObjectEx) | |
| PropertyGetT |
Gets the value of the object property by name.
(Defined by ObjectEx) | |
| PropertySet |
Sets the value of the object property by name.
(Defined by ObjectEx) |