![]() |
VR-Link C# API Documentation
|
Represents a 4x4 matrix containing 3D rotation, scale, transform, and projection with double-precision components. More...
Inheritance diagram for makVrl.Matrix4d:
Collaboration diagram for makVrl.Matrix4d:Public Member Functions | |
| Matrix4d (Vector4d row0, Vector4d row1, Vector4d row2, Vector4d row3) | |
| Constructs a new instance. | |
| Matrix4d (double m00, double m01, double m02, double m03, double m10, double m11, double m12, double m13, double m20, double m21, double m22, double m23, double m30, double m31, double m32, double m33) | |
| Constructs a new instance. | |
| void | Invert () |
| Converts this instance into its inverse. | |
| void | Transpose () |
| Converts this instance into its transpose. | |
| Matrix4d | Normalized () |
| Returns a normalised copy of this instance. | |
| void | Normalize () |
| Divides each element in the Matrix by the Determinant. | |
| Matrix4d | Inverted () |
| Returns an inverted copy of this instance. | |
| Matrix4d | ClearTranslation () |
| Returns a copy of this Matrix4d without translation. | |
| Matrix4d | ClearScale () |
| Returns a copy of this Matrix4d without scale. | |
| Matrix4d | ClearRotation () |
| Returns a copy of this Matrix4d without rotation. | |
| Matrix4d | ClearProjection () |
| Returns a copy of this Matrix4d without projection. | |
| Vector3d | ExtractTranslation () |
| Returns the translation component of this instance. | |
| Vector3d | ExtractScale () |
| Returns the scale component of this instance. | |
| Quaterniond | ExtractRotation (bool row_normalise=true) |
| Returns the rotation component of this instance. | |
| Vector4d | ExtractProjection () |
| Returns the projection component of this instance. | |
| override string | ToString () |
| Returns a System.String that represents the current Matrix44. | |
| override int | GetHashCode () |
| Returns the hashcode for this instance. | |
| override bool | Equals (object obj) |
| Indicates whether this instance and a specified object are equal. | |
| bool | Equals (Matrix4d other) |
| Indicates whether the current matrix is equal to another matrix. | |
Static Public Member Functions | |
| static void | CreateFromAxisAngle (Vector3d axis, double angle, out Matrix4d result) |
| Build a rotation matrix from the specified axis/angle rotation. | |
| static Matrix4d | CreateFromAxisAngle (Vector3d axis, double angle) |
| Build a rotation matrix from the specified axis/angle rotation. | |
| static void | CreateRotationX (double angle, out Matrix4d result) |
| Builds a rotation matrix for a rotation around the x-axis. | |
| static Matrix4d | CreateRotationX (double angle) |
| Builds a rotation matrix for a rotation around the x-axis. | |
| static void | CreateRotationY (double angle, out Matrix4d result) |
| Builds a rotation matrix for a rotation around the y-axis. | |
| static Matrix4d | CreateRotationY (double angle) |
| Builds a rotation matrix for a rotation around the y-axis. | |
| static void | CreateRotationZ (double angle, out Matrix4d result) |
| Builds a rotation matrix for a rotation around the z-axis. | |
| static Matrix4d | CreateRotationZ (double angle) |
| Builds a rotation matrix for a rotation around the z-axis. | |
| static void | CreateTranslation (double x, double y, double z, out Matrix4d result) |
| Creates a translation matrix. | |
| static void | CreateTranslation (ref Vector3d vector, out Matrix4d result) |
| Creates a translation matrix. | |
| static Matrix4d | CreateTranslation (double x, double y, double z) |
| Creates a translation matrix. | |
| static Matrix4d | CreateTranslation (Vector3d vector) |
| Creates a translation matrix. | |
| static void | CreateOrthographic (double width, double height, double zNear, double zFar, out Matrix4d result) |
| Creates an orthographic projection matrix. | |
| static Matrix4d | CreateOrthographic (double width, double height, double zNear, double zFar) |
| Creates an orthographic projection matrix. | |
| static void | CreateOrthographicOffCenter (double left, double right, double bottom, double top, double zNear, double zFar, out Matrix4d result) |
| Creates an orthographic projection matrix. | |
| static Matrix4d | CreateOrthographicOffCenter (double left, double right, double bottom, double top, double zNear, double zFar) |
| Creates an orthographic projection matrix. | |
| static void | CreatePerspectiveFieldOfView (double fovy, double aspect, double zNear, double zFar, out Matrix4d result) |
| Creates a perspective projection matrix. | |
| static Matrix4d | CreatePerspectiveFieldOfView (double fovy, double aspect, double zNear, double zFar) |
| Creates a perspective projection matrix. | |
| static void | CreatePerspectiveOffCenter (double left, double right, double bottom, double top, double zNear, double zFar, out Matrix4d result) |
| Creates an perspective projection matrix. | |
| static Matrix4d | CreatePerspectiveOffCenter (double left, double right, double bottom, double top, double zNear, double zFar) |
| Creates an perspective projection matrix. | |
| static void | CreateFromQuaternion (ref Quaternion q, ref Matrix4 m) |
| Build a rotation matrix from the specified quaternion. | |
| static Matrix4 | CreateFromQuaternion (ref Quaternion q) |
| Build a rotation matrix from the specified quaternion. | |
| static Matrix4d | Translation (Vector3d trans) |
| Build a translation matrix with the given translation | |
| static Matrix4d | Translation (double x, double y, double z) |
| Build a translation matrix with the given translation | |
| static Matrix4d | Scale (double scale) |
| Build a scaling matrix | |
| static Matrix4d | Scale (Vector3d scale) |
| Build a scaling matrix | |
| static Matrix4d | Scale (double x, double y, double z) |
| Build a scaling matrix | |
| static Matrix4d | RotateX (double angle) |
| Build a rotation matrix that rotates about the x-axis | |
| static Matrix4d | RotateY (double angle) |
| Build a rotation matrix that rotates about the y-axis | |
| static Matrix4d | RotateZ (double angle) |
| Build a rotation matrix that rotates about the z-axis | |
| static Matrix4d | Rotate (Vector3d axis, double angle) |
| Build a rotation matrix to rotate about the given axis | |
| static Matrix4d | Rotate (Quaterniond q) |
| Build a rotation matrix from a quaternion | |
| static Matrix4d | LookAt (Vector3d eye, Vector3d target, Vector3d up) |
| Build a world space to camera space matrix | |
| static Matrix4d | LookAt (double eyeX, double eyeY, double eyeZ, double targetX, double targetY, double targetZ, double upX, double upY, double upZ) |
| Build a world space to camera space matrix | |
| static Matrix4d | Frustum (double left, double right, double bottom, double top, double near, double far) |
| Build a projection matrix | |
| static Matrix4d | Perspective (double fovy, double aspect, double near, double far) |
| Build a projection matrix | |
| static Matrix4d | Add (Matrix4d left, Matrix4d right) |
| Adds two instances. | |
| static void | Add (ref Matrix4d left, ref Matrix4d right, out Matrix4d result) |
| Adds two instances. | |
| static Matrix4d | Subtract (Matrix4d left, Matrix4d right) |
| Subtracts one instance from another. | |
| static void | Subtract (ref Matrix4d left, ref Matrix4d right, out Matrix4d result) |
| Subtracts one instance from another. | |
| static Matrix4d | Mult (Matrix4d left, Matrix4d right) |
| Multiplies two instances. | |
| static void | Mult (ref Matrix4d left, ref Matrix4d right, out Matrix4d result) |
| Multiplies two instances. | |
| static Matrix4d | Mult (Matrix4d left, double right) |
| Multiplies an instance by a scalar. | |
| static void | Mult (ref Matrix4d left, double right, out Matrix4d result) |
| Multiplies an instance by a scalar. | |
| static Matrix4d | Invert (Matrix4d mat) |
| Calculate the inverse of the given matrix | |
| static Matrix4d | Transpose (Matrix4d mat) |
| Calculate the transpose of the given matrix | |
| static void | Transpose (ref Matrix4d mat, out Matrix4d result) |
| Calculate the transpose of the given matrix | |
| static Matrix4d | operator* (Matrix4d left, Matrix4d right) |
| Matrix multiplication | |
| static Matrix4d | operator* (Matrix4d left, float right) |
| Matrix-scalar multiplication | |
| static Matrix4d | operator+ (Matrix4d left, Matrix4d right) |
| Matrix addition | |
| static Matrix4d | operator- (Matrix4d left, Matrix4d right) |
| Matrix subtraction | |
| static bool | operator== (Matrix4d left, Matrix4d right) |
| Compares two instances for equality. | |
| static bool | operator!= (Matrix4d left, Matrix4d right) |
| Compares two instances for inequality. | |
Public Attributes | |
| Vector4d | Row0 |
| Top row of the matrix | |
| Vector4d | Row1 |
| 2nd row of the matrix | |
| Vector4d | Row2 |
| 3rd row of the matrix | |
| Vector4d | Row3 |
| Bottom row of the matrix | |
Static Public Attributes | |
| static Matrix4d | Identity = new Matrix4d(Vector4d .UnitX, Vector4d .UnitY, Vector4d .UnitZ, Vector4d .UnitW) |
| The identity matrix | |
Properties | |
| double | Determinant [get] |
| The determinant of this matrix | |
| Vector4d | Column0 [get, set] |
| The first column of this matrix | |
| Vector4d | Column1 [get, set] |
| The second column of this matrix | |
| Vector4d | Column2 [get, set] |
| The third column of this matrix | |
| Vector4d | Column3 [get, set] |
| The fourth column of this matrix | |
| double | M11 [get, set] |
| Gets or sets the value at row 1, column 1 of this instance. | |
| double | M12 [get, set] |
| Gets or sets the value at row 1, column 2 of this instance. | |
| double | M13 [get, set] |
| Gets or sets the value at row 1, column 3 of this instance. | |
| double | M14 [get, set] |
| Gets or sets the value at row 1, column 4 of this instance. | |
| double | M21 [get, set] |
| Gets or sets the value at row 2, column 1 of this instance. | |
| double | M22 [get, set] |
| Gets or sets the value at row 2, column 2 of this instance. | |
| double | M23 [get, set] |
| Gets or sets the value at row 2, column 3 of this instance. | |
| double | M24 [get, set] |
| Gets or sets the value at row 2, column 4 of this instance. | |
| double | M31 [get, set] |
| Gets or sets the value at row 3, column 1 of this instance. | |
| double | M32 [get, set] |
| Gets or sets the value at row 3, column 2 of this instance. | |
| double | M33 [get, set] |
| Gets or sets the value at row 3, column 3 of this instance. | |
| double | M34 [get, set] |
| Gets or sets the value at row 3, column 4 of this instance. | |
| double | M41 [get, set] |
| Gets or sets the value at row 4, column 1 of this instance. | |
| double | M42 [get, set] |
| Gets or sets the value at row 4, column 2 of this instance. | |
| double | M43 [get, set] |
| Gets or sets the value at row 4, column 3 of this instance. | |
| double | M44 [get, set] |
| Gets or sets the value at row 4, column 4 of this instance. | |
| Vector4d | Diagonal [get, set] |
| Gets or sets the values along the main diagonal of the matrix. | |
| double | Trace [get] |
| Gets the trace of the matrix, the sum of the values along the diagonal. | |
| double | this[int rowIndex, int columnIndex] [get, set] |
| Gets or sets the value at a specified row and column. | |
Represents a 4x4 matrix containing 3D rotation, scale, transform, and projection with double-precision components.
Constructs a new instance.
| row0 | Top row of the matrix |
| row1 | Second row of the matrix |
| row2 | Third row of the matrix |
| row3 | Bottom row of the matrix |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
Referenced by makVrl.Matrix4d.CreateFromAxisAngle(), makVrl.Matrix4d.CreateOrthographicOffCenter(), makVrl.Matrix4d.CreatePerspectiveOffCenter(), makVrl.Matrix4d.Frustum(), makVrl.Matrix4d.LookAt(), and makVrl.Matrix4d.Transpose().
|
inline |
Constructs a new instance.
| m00 | First item of the first row. |
| m01 | Second item of the first row. |
| m02 | Third item of the first row. |
| m03 | Fourth item of the first row. |
| m10 | First item of the second row. |
| m11 | Second item of the second row. |
| m12 | Third item of the second row. |
| m13 | Fourth item of the second row. |
| m20 | First item of the third row. |
| m21 | Second item of the third row. |
| m22 | Third item of the third row. |
| m23 | First item of the third row. |
| m30 | Fourth item of the fourth row. |
| m31 | Second item of the fourth row. |
| m32 | Third item of the fourth row. |
| m33 | Fourth item of the fourth row. |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
Adds two instances.
| left | The left operand of the addition. |
| right | The right operand of the addition. |
Referenced by makVrl.Matrix4d.operator+().
|
inlinestatic |
Adds two instances.
| left | The left operand of the addition. |
| right | The right operand of the addition. |
| result | A new instance that is the result of the addition. |
References makVrl.Matrix4d.Row0.
|
inline |
Returns a copy of this Matrix4d without projection.
References makVrl.Matrix4d.Column3, and makVrl.Vector4d.Zero.
|
inline |
Returns a copy of this Matrix4d without rotation.
References makVrl.Vector3d.Length, makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Vector4d.Xyz.
|
inline |
Returns a copy of this Matrix4d without scale.
References makVrl.Vector3d.Normalized(), makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Vector4d.Xyz.
|
inline |
Returns a copy of this Matrix4d without translation.
References makVrl.Matrix4d.Row3, makVrl.Vector4d.Xyz, and makVrl.Vector3d.Zero.
|
inlinestatic |
Build a rotation matrix from the specified axis/angle rotation.
| axis | The axis to rotate about. |
| angle | Angle in radians to rotate counter-clockwise (looking in the direction of the given axis). |
| result | A matrix instance. |
References makVrl.Matrix4d.Matrix4d(), makVrl.Vector3d.Normalize(), makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
Referenced by makVrl.Matrix4d.CreateFromAxisAngle().
Build a rotation matrix from the specified axis/angle rotation.
| axis | The axis to rotate about. |
| angle | Angle in radians to rotate counter-clockwise (looking in the direction of the given axis). |
References makVrl.Matrix4d.CreateFromAxisAngle().
|
inlinestatic |
Build a rotation matrix from the specified quaternion.
| q | Quaternion to translate. |
| m | Matrix result. |
References makVrl.Matrix4.Identity, and makVrl.Matrix4.M11.
|
inlinestatic |
Build a rotation matrix from the specified quaternion.
| q | Quaternion to translate. |
References makVrl.Matrix4.Identity, makVrl.Matrix4.M11, makVrl.Matrix4.M12, makVrl.Matrix4.M13, makVrl.Matrix4.M21, makVrl.Matrix4.M22, makVrl.Matrix4.M23, makVrl.Matrix4.M31, makVrl.Matrix4.M32, and makVrl.Matrix4.M33.
|
inlinestatic |
Creates an orthographic projection matrix.
| width | The width of the projection volume. |
| height | The height of the projection volume. |
| zNear | The near edge of the projection volume. |
| zFar | The far edge of the projection volume. |
| result | The resulting Matrix4d instance. |
References makVrl.Matrix4d.CreateOrthographicOffCenter().
|
inlinestatic |
Creates an orthographic projection matrix.
| width | The width of the projection volume. |
| height | The height of the projection volume. |
| zNear | The near edge of the projection volume. |
| zFar | The far edge of the projection volume. |
<rereturns>The resulting Matrix4d instance.</rereturns>
References makVrl.Matrix4d.CreateOrthographicOffCenter().
|
inlinestatic |
Creates an orthographic projection matrix.
| left | The left edge of the projection volume. |
| right | The right edge of the projection volume. |
| bottom | The bottom edge of the projection volume. |
| top | The top edge of the projection volume. |
| zNear | The near edge of the projection volume. |
| zFar | The far edge of the projection volume. |
| result | The resulting Matrix4d instance. |
References makVrl.Matrix4d.Matrix4d().
Referenced by makVrl.Matrix4d.CreateOrthographic(), and makVrl.Matrix4d.CreateOrthographicOffCenter().
|
inlinestatic |
Creates an orthographic projection matrix.
| left | The left edge of the projection volume. |
| right | The right edge of the projection volume. |
| bottom | The bottom edge of the projection volume. |
| top | The top edge of the projection volume. |
| zNear | The near edge of the projection volume. |
| zFar | The far edge of the projection volume. |
References makVrl.Matrix4d.CreateOrthographicOffCenter().
|
inlinestatic |
Creates a perspective projection matrix.
| fovy | Angle of the field of view in the y direction (in radians) |
| aspect | Aspect ratio of the view (width / height) |
| zNear | Distance to the near clip plane |
| zFar | Distance to the far clip plane |
| result | A projection matrix that transforms camera space to raster space |
| System.ArgumentOutOfRangeException | Thrown under the following conditions:
|
References makVrl.Matrix4d.CreatePerspectiveOffCenter().
Referenced by makVrl.Matrix4d.CreatePerspectiveFieldOfView().
|
inlinestatic |
Creates a perspective projection matrix.
| fovy | Angle of the field of view in the y direction (in radians) |
| aspect | Aspect ratio of the view (width / height) |
| zNear | Distance to the near clip plane |
| zFar | Distance to the far clip plane |
| System.ArgumentOutOfRangeException | Thrown under the following conditions:
|
References makVrl.Matrix4d.CreatePerspectiveFieldOfView().
|
inlinestatic |
Creates an perspective projection matrix.
| left | Left edge of the view frustum |
| right | Right edge of the view frustum |
| bottom | Bottom edge of the view frustum |
| top | Top edge of the view frustum |
| zNear | Distance to the near clip plane |
| zFar | Distance to the far clip plane |
| result | A projection matrix that transforms camera space to raster space |
| System.ArgumentOutOfRangeException | Thrown under the following conditions:
|
References makVrl.Matrix4d.Matrix4d().
Referenced by makVrl.Matrix4d.CreatePerspectiveFieldOfView(), and makVrl.Matrix4d.CreatePerspectiveOffCenter().
|
inlinestatic |
Creates an perspective projection matrix.
| left | Left edge of the view frustum |
| right | Right edge of the view frustum |
| bottom | Bottom edge of the view frustum |
| top | Top edge of the view frustum |
| zNear | Distance to the near clip plane |
| zFar | Distance to the far clip plane |
| System.ArgumentOutOfRangeException | Thrown under the following conditions:
|
References makVrl.Matrix4d.CreatePerspectiveOffCenter().
|
inlinestatic |
Builds a rotation matrix for a rotation around the x-axis.
| angle | The counter-clockwise angle in radians. |
| result | The resulting Matrix4d instance. |
References makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitX.
Referenced by makVrl.Matrix4d.CreateRotationX().
|
inlinestatic |
Builds a rotation matrix for a rotation around the x-axis.
| angle | The counter-clockwise angle in radians. |
References makVrl.Matrix4d.CreateRotationX().
|
inlinestatic |
Builds a rotation matrix for a rotation around the y-axis.
| angle | The counter-clockwise angle in radians. |
| result | The resulting Matrix4d instance. |
References makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitY.
Referenced by makVrl.Matrix4d.CreateRotationY().
|
inlinestatic |
Builds a rotation matrix for a rotation around the y-axis.
| angle | The counter-clockwise angle in radians. |
References makVrl.Matrix4d.CreateRotationY().
|
inlinestatic |
Builds a rotation matrix for a rotation around the z-axis.
| angle | The counter-clockwise angle in radians. |
| result | The resulting Matrix4d instance. |
References makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitZ.
Referenced by makVrl.Matrix4d.CreateRotationZ().
|
inlinestatic |
Builds a rotation matrix for a rotation around the z-axis.
| angle | The counter-clockwise angle in radians. |
References makVrl.Matrix4d.CreateRotationZ().
|
inlinestatic |
Creates a translation matrix.
| x | X translation. |
| y | Y translation. |
| z | Z translation. |
| result | The resulting Matrix4d instance. |
References makVrl.Matrix4d.Identity, and makVrl.Matrix4d.Row3.
Referenced by makVrl.Matrix4d.CreateTranslation(), and makVrl.Matrix4d.LookAt().
|
inlinestatic |
Creates a translation matrix.
| vector | The translation vector. |
| result | The resulting Matrix4d instance. |
References makVrl.Matrix4d.Identity, and makVrl.Matrix4d.Row3.
|
inlinestatic |
Creates a translation matrix.
| x | X translation. |
| y | Y translation. |
| z | Z translation. |
References makVrl.Matrix4d.CreateTranslation().
Creates a translation matrix.
| vector | The translation vector. |
References makVrl.Matrix4d.CreateTranslation(), makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
|
inline |
Indicates whether this instance and a specified object are equal.
| obj | The object to compare to. |
Referenced by makVrl.Matrix4d.operator!=(), and makVrl.Matrix4d.operator==().
|
inline |
Indicates whether the current matrix is equal to another matrix.
| other | A matrix to compare with this matrix. |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
|
inline |
Returns the projection component of this instance.
References makVrl.Matrix4d.Column3.
|
inline |
Returns the rotation component of this instance.
Quite slow.
| row_normalise | Whether the method should row-normalise (i.e. remove scale from) the Matrix. Pass false if you know it's already normalised. |
References makVrl.Quaterniond.Normalize(), makVrl.Vector3d.Normalized(), makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Quaterniond.W, makVrl.Quaterniond.X, makVrl.Vector4d.Xyz, makVrl.Quaterniond.Y, and makVrl.Quaterniond.Z.
|
inline |
Returns the scale component of this instance.
References makVrl.Vector3d.Length, makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Vector4d.Xyz.
|
inline |
Returns the translation component of this instance.
References makVrl.Matrix4d.Row3, and makVrl.Vector4d.Xyz.
|
inlinestatic |
Build a projection matrix
| left | Left edge of the view frustum |
| right | Right edge of the view frustum |
| bottom | Bottom edge of the view frustum |
| top | Top edge of the view frustum |
| near | Distance to the near clip plane |
| far | Distance to the far clip plane |
References makVrl.Matrix4d.Matrix4d().
Referenced by makVrl.Matrix4d.Perspective().
|
inline |
Returns the hashcode for this instance.
References makVrl.Vector4d.GetHashCode(), makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
|
inline |
Converts this instance into its inverse.
References makVrl.Matrix4d.Invert().
Referenced by makVrl.Matrix4d.Invert(), makVrl.Matrix4d.Inverted(), and makVrl.Vector3d.TransformNormal().
Calculate the inverse of the given matrix
| mat | The matrix to invert |
| InvalidOperationException | Thrown if the Matrix4d is singular. |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.W, makVrl.Vector4d.X, makVrl.Vector4d.Y, and makVrl.Vector4d.Z.
|
inline |
Returns an inverted copy of this instance.
References makVrl.Matrix4d.Determinant, and makVrl.Matrix4d.Invert().
Build a world space to camera space matrix
| eye | Eye (camera) position in world space |
| target | Target position in world space |
| up | Up vector in world space (should not be parallel to the camera direction, that is target - eye) |
References makVrl.Matrix4d.CreateTranslation(), makVrl.Vector3d.Cross(), makVrl.Matrix4d.Matrix4d(), makVrl.Vector3d.Normalize(), makVrl.Vector4d.UnitW, makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
Referenced by makVrl.Matrix4d.LookAt().
|
inlinestatic |
Build a world space to camera space matrix
| eyeX | Eye (camera) position in world space |
| eyeY | Eye (camera) position in world space |
| eyeZ | Eye (camera) position in world space |
| targetX | Target position in world space |
| targetY | Target position in world space |
| targetZ | Target position in world space |
| upX | Up vector in world space (should not be parallel to the camera direction, that is target - eye) |
| upY | Up vector in world space (should not be parallel to the camera direction, that is target - eye) |
| upZ | Up vector in world space (should not be parallel to the camera direction, that is target - eye) |
References makVrl.Matrix4d.LookAt().
Multiplies two instances.
| left | The left operand of the multiplication. |
| right | The right operand of the multiplication. |
Referenced by makVrl.Matrix4d.Mult(), and makVrl.Matrix4d.operator*().
|
inlinestatic |
Multiplies two instances.
| left | The left operand of the multiplication. |
| right | The right operand of the multiplication. |
| result | A new instance that is the result of the multiplication |
References makVrl.Matrix4d.Row0, and makVrl.Vector4d.X.
Multiplies an instance by a scalar.
| left | The left operand of the multiplication. |
| right | The right operand of the multiplication. |
References makVrl.Matrix4d.Mult().
|
inlinestatic |
Multiplies an instance by a scalar.
| left | The left operand of the multiplication. |
| right | The right operand of the multiplication. |
| result | A new instance that is the result of the multiplication |
References makVrl.Matrix4d.Row0.
|
inline |
Divides each element in the Matrix by the Determinant.
References makVrl.Matrix4d.Determinant, makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
Referenced by makVrl.Matrix4d.Normalized().
|
inline |
Returns a normalised copy of this instance.
References makVrl.Matrix4d.Normalize().
Compares two instances for inequality.
| left | The first instance. |
| right | The second instance. |
References makVrl.Matrix4d.Equals().
Matrix multiplication
| left | left-hand operand |
| right | right-hand operand |
References makVrl.Matrix4d.Mult().
Matrix-scalar multiplication
| left | left-hand operand |
| right | right-hand operand |
References makVrl.Matrix4d.Mult().
Matrix addition
| left | left-hand operand |
| right | right-hand operand |
References makVrl.Matrix4d.Add().
Matrix subtraction
| left | left-hand operand |
| right | right-hand operand |
References makVrl.Matrix4d.Subtract().
Compares two instances for equality.
| left | The first instance. |
| right | The second instance. |
References makVrl.Matrix4d.Equals().
|
inlinestatic |
Build a projection matrix
| fovy | Angle of the field of view in the y direction (in radians) |
| aspect | Aspect ratio of the view (width / height) |
| near | Distance to the near clip plane |
| far | Distance to the far clip plane |
References makVrl.Matrix4d.Frustum().
Build a rotation matrix to rotate about the given axis
| axis | the axis to rotate about |
| angle | angle in radians to rotate counter-clockwise (looking in the direction of the given axis) |
References makVrl.Vector3d.Normalize(), makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.UnitW, makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
Referenced by makVrl.Matrix4d.Rotate().
|
inlinestatic |
Build a rotation matrix from a quaternion
| q | the quaternion |
References makVrl.Matrix4d.Rotate(), and makVrl.Quaterniond.ToAxisAngle().
|
inlinestatic |
Build a rotation matrix that rotates about the x-axis
| angle | angle in radians to rotate counter-clockwise around the x-axis |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitX.
|
inlinestatic |
Build a rotation matrix that rotates about the y-axis
| angle | angle in radians to rotate counter-clockwise around the y-axis |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitY.
|
inlinestatic |
Build a rotation matrix that rotates about the z-axis
| angle | angle in radians to rotate counter-clockwise around the z-axis |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.UnitW, and makVrl.Vector4d.UnitZ.
|
inlinestatic |
Build a scaling matrix
| scale | Single scale factor for x,y and z axes |
Referenced by makVrl.Matrix4d.Scale().
Build a scaling matrix
| scale | Scale factors for x,y and z axes |
References makVrl.Matrix4d.Scale(), makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
|
inlinestatic |
Build a scaling matrix
| x | Scale factor for x-axis |
| y | Scale factor for y-axis |
| z | Scale factor for z-axis |
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, makVrl.Matrix4d.Row3, makVrl.Vector4d.UnitW, makVrl.Vector4d.UnitX, makVrl.Vector4d.UnitY, and makVrl.Vector4d.UnitZ.
Subtracts one instance from another.
| left | The left operand of the subraction. |
| right | The right operand of the subraction. |
Referenced by makVrl.Matrix4d.operator-().
|
inlinestatic |
Subtracts one instance from another.
| left | The left operand of the subraction. |
| right | The right operand of the subraction. |
| result | A new instance that is the result of the subraction. |
References makVrl.Matrix4d.Row0.
|
inline |
Returns a System.String that represents the current Matrix44.
References makVrl.Matrix4d.Row0, makVrl.Matrix4d.Row1, makVrl.Matrix4d.Row2, and makVrl.Matrix4d.Row3.
Build a translation matrix with the given translation
| trans | The vector to translate along |
References makVrl.Vector3d.X, makVrl.Vector3d.Y, and makVrl.Vector3d.Z.
|
inlinestatic |
Build a translation matrix with the given translation
| x | X translation |
| y | Y translation |
| z | Z translation |
References makVrl.Matrix4d.Identity, and makVrl.Matrix4d.Row3.
|
inline |
Converts this instance into its transpose.
References makVrl.Matrix4d.Transpose().
Referenced by makVrl.Matrix4d.Transpose().
Calculate the transpose of the given matrix
| mat | The matrix to transpose |
References makVrl.Matrix4d.Column0, makVrl.Matrix4d.Column1, makVrl.Matrix4d.Column2, makVrl.Matrix4d.Column3, and makVrl.Matrix4d.Matrix4d().
Calculate the transpose of the given matrix
| mat | The matrix to transpose |
| result | The result of the calculation |
|
static |
The identity matrix
Referenced by makVrl.Matrix4d.CreateTranslation(), and makVrl.Matrix4d.Translation().
| Vector4d makVrl.Matrix4d.Row0 |
Top row of the matrix
Referenced by makVrl.Matrix4d.Add(), makVrl.Matrix4d.ClearRotation(), makVrl.Matrix4d.ClearScale(), makVrl.Matrix4d.Equals(), makVrl.Matrix4d.ExtractRotation(), makVrl.Matrix4d.ExtractScale(), makVrl.Matrix4d.GetHashCode(), makVrl.Matrix4d.Invert(), makVrl.Matrix3d.Matrix3d(), makVrl.Matrix4d.Matrix4d(), makVrl.Matrix4d.Mult(), makVrl.Matrix4d.Normalize(), makVrl.Matrix4d.Rotate(), makVrl.Matrix4d.RotateX(), makVrl.Matrix4d.RotateY(), makVrl.Matrix4d.RotateZ(), makVrl.Matrix4d.Scale(), makVrl.Matrix4d.Subtract(), makVrl.Matrix4d.ToString(), and makVrl.Vector3d.TransformNormalInverse().
| Vector4d makVrl.Matrix4d.Row1 |
2nd row of the matrix
Referenced by makVrl.Matrix4d.ClearRotation(), makVrl.Matrix4d.ClearScale(), makVrl.Matrix4d.Equals(), makVrl.Matrix4d.ExtractRotation(), makVrl.Matrix4d.ExtractScale(), makVrl.Matrix4d.GetHashCode(), makVrl.Matrix4d.Invert(), makVrl.Matrix3d.Matrix3d(), makVrl.Matrix4d.Matrix4d(), makVrl.Matrix4d.Normalize(), makVrl.Matrix4d.Rotate(), makVrl.Matrix4d.RotateX(), makVrl.Matrix4d.RotateY(), makVrl.Matrix4d.RotateZ(), makVrl.Matrix4d.Scale(), makVrl.Matrix4d.ToString(), and makVrl.Vector3d.TransformNormalInverse().
| Vector4d makVrl.Matrix4d.Row2 |
3rd row of the matrix
Referenced by makVrl.Matrix4d.ClearRotation(), makVrl.Matrix4d.ClearScale(), makVrl.Matrix4d.Equals(), makVrl.Matrix4d.ExtractRotation(), makVrl.Matrix4d.ExtractScale(), makVrl.Matrix4d.GetHashCode(), makVrl.Matrix4d.Invert(), makVrl.Matrix3d.Matrix3d(), makVrl.Matrix4d.Matrix4d(), makVrl.Matrix4d.Normalize(), makVrl.Matrix4d.Rotate(), makVrl.Matrix4d.RotateX(), makVrl.Matrix4d.RotateY(), makVrl.Matrix4d.RotateZ(), makVrl.Matrix4d.Scale(), makVrl.Matrix4d.ToString(), and makVrl.Vector3d.TransformNormalInverse().
| Vector4d makVrl.Matrix4d.Row3 |
Bottom row of the matrix
Referenced by makVrl.Matrix4d.ClearTranslation(), makVrl.Matrix4d.CreateTranslation(), makVrl.Matrix4d.Equals(), makVrl.Matrix4d.ExtractTranslation(), makVrl.Matrix4d.GetHashCode(), makVrl.Matrix4d.Invert(), makVrl.Matrix4d.Matrix4d(), makVrl.Matrix4d.Normalize(), makVrl.Matrix4d.Rotate(), makVrl.Matrix4d.RotateX(), makVrl.Matrix4d.RotateY(), makVrl.Matrix4d.RotateZ(), makVrl.Matrix4d.Scale(), makVrl.Matrix4d.ToString(), makVrl.Vector3d.TransformPosition(), and makVrl.Matrix4d.Translation().
|
getset |
The first column of this matrix
Referenced by makVrl.Vector3d.TransformPosition(), makVrl.Vector3d.TransformVector(), and makVrl.Matrix4d.Transpose().
|
getset |
The second column of this matrix
Referenced by makVrl.Vector3d.TransformPosition(), makVrl.Vector3d.TransformVector(), and makVrl.Matrix4d.Transpose().
|
getset |
The third column of this matrix
Referenced by makVrl.Vector3d.TransformPosition(), makVrl.Vector3d.TransformVector(), and makVrl.Matrix4d.Transpose().
|
getset |
The fourth column of this matrix
Referenced by makVrl.Matrix4d.ClearProjection(), makVrl.Matrix4d.ExtractProjection(), and makVrl.Matrix4d.Transpose().
|
get |
The determinant of this matrix
Referenced by makVrl.Matrix4d.Inverted(), and makVrl.Matrix4d.Normalize().
|
getset |
Gets or sets the values along the main diagonal of the matrix.
|
getset |
Gets or sets the value at row 1, column 1 of this instance.
|
getset |
Gets or sets the value at row 1, column 2 of this instance.
|
getset |
Gets or sets the value at row 1, column 3 of this instance.
|
getset |
Gets or sets the value at row 1, column 4 of this instance.
|
getset |
Gets or sets the value at row 2, column 1 of this instance.
|
getset |
Gets or sets the value at row 2, column 2 of this instance.
|
getset |
Gets or sets the value at row 2, column 3 of this instance.
|
getset |
Gets or sets the value at row 2, column 4 of this instance.
|
getset |
Gets or sets the value at row 3, column 1 of this instance.
|
getset |
Gets or sets the value at row 3, column 2 of this instance.
|
getset |
Gets or sets the value at row 3, column 3 of this instance.
|
getset |
Gets or sets the value at row 3, column 4 of this instance.
|
getset |
Gets or sets the value at row 4, column 1 of this instance.
|
getset |
Gets or sets the value at row 4, column 2 of this instance.
|
getset |
Gets or sets the value at row 4, column 3 of this instance.
|
getset |
Gets or sets the value at row 4, column 4 of this instance.
|
getset |
Gets or sets the value at a specified row and column.
|
get |
Gets the trace of the matrix, the sum of the values along the diagonal.