Space Engineers
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Properties | List of all members
VRageMath.MatrixD Struct Reference

Defines a matrix. More...

Inheritance diagram for VRageMath.MatrixD:

Public Member Functions

Vector3D GetDirectionVector (Base6Directions.Direction direction)
 Gets the base vector of the matrix, corresponding to the given direction More...
 
void SetDirectionVector (Base6Directions.Direction direction, Vector3D newValue)
 Sets the base vector of the matrix, corresponding to the given direction More...
 
Base6Directions.Direction GetClosestDirection (Vector3D referenceVector)
 
Base6Directions.Direction GetClosestDirection (ref Vector3D referenceVector)
 
 MatrixD (double m11, double m12, double m13, double m14, double m21, double m22, double m23, double m24, double m31, double m32, double m33, double m34, double m41, double m42, double m43, double m44)
 Initializes a new instance of Matrix. More...
 
 MatrixD (double m11, double m12, double m13, double m21, double m22, double m23, double m31, double m32, double m33)
 Initializes a new instance of Matrix with rotation data More...
 
 MatrixD (Matrix m)
 
Vector4 GetRow (int row)
 
void SetRow (int row, Vector4 value)
 
override string ToString ()
 Retrieves a string representation of the current object. More...
 
bool Equals (MatrixD other)
 Determines whether the specified Object is equal to the Matrix. More...
 
bool EqualsFast (ref MatrixD other, double epsilon=0.0001)
 Compares just position, forward and up More...
 
override bool Equals (object obj)
 Returns a value that indicates whether the current instance is equal to a specified object. More...
 
override int GetHashCode ()
 Gets the hash code of this object. More...
 
double Determinant ()
 Calculates the determinant of the matrix. More...
 
MatrixD GetOrientation ()
 Gets the orientation. More...
 
void AssertIsValid ()
 
bool IsValid ()
 
bool IsNan ()
 
bool IsRotation ()
 
bool HasNoTranslationOrPerspective ()
 Returns true if this matrix represents invertible (you can call Invert on it) linear (it does not contain translation or perspective transformation) transformation. Such matrix consist solely of rotations, shearing, mirroring and scaling. It can be orthogonalized to create an orthogonal rotation matrix. More...
 
bool IsMirrored ()
 

Static Public Member Functions

static void Rescale (ref MatrixD matrix, double scale)
 Same result as Matrix.CreateScale(scale) * matrix, but much faster More...
 
static void Rescale (ref MatrixD matrix, float scale)
 Same result as Matrix.CreateScale(scale) * matrix, but much faster More...
 
static void Rescale (ref MatrixD matrix, ref Vector3D scale)
 Same result as Matrix.CreateScale(scale) * matrix, but much faster More...
 
static MatrixD Rescale (MatrixD matrix, double scale)
 
static MatrixD Rescale (MatrixD matrix, Vector3D scale)
 
static MatrixD ()
 
static MatrixD operator- (MatrixD matrix1)
 Negates individual elements of a matrix. More...
 
static bool operator== (MatrixD matrix1, MatrixD matrix2)
 Compares a matrix for equality with another matrix. More...
 
static bool operator!= (MatrixD matrix1, MatrixD matrix2)
 Tests a matrix for inequality with another matrix. More...
 
static MatrixD operator+ (MatrixD matrix1, MatrixD matrix2)
 Adds a matrix to another matrix. More...
 
static MatrixD operator- (MatrixD matrix1, MatrixD matrix2)
 Subtracts matrices. More...
 
static MatrixD operator* (MatrixD matrix1, MatrixD matrix2)
 Multiplies a matrix by another matrix. More...
 
static MatrixD operator* (MatrixD matrix1, Matrix matrix2)
 Multiplies a matrix by another matrix. More...
 
static MatrixD operator* (Matrix matrix1, MatrixD matrix2)
 Multiplies a matrix by another matrix. More...
 
static MatrixD operator* (MatrixD matrix, double scaleFactor)
 Multiplies a matrix by a scalar value. More...
 
static MatrixD operator* (double scaleFactor, MatrixD matrix)
 Multiplies a matrix by a scalar value. More...
 
static MatrixD operator/ (MatrixD matrix1, MatrixD matrix2)
 Divides the components of a matrix by the corresponding components of another matrix. More...
 
static MatrixD operator/ (MatrixD matrix1, double divider)
 Divides the components of a matrix by a scalar. More...
 
static MatrixD CreateBillboard (Vector3D objectPosition, Vector3D cameraPosition, Vector3D cameraUpVector, Vector3D?cameraForwardVector)
 Creates a spherical billboard that rotates around a specified object position. More...
 
static void CreateBillboard (ref Vector3D objectPosition, ref Vector3D cameraPosition, ref Vector3D cameraUpVector, Vector3D?cameraForwardVector, out MatrixD result)
 Creates a spherical billboard that rotates around a specified object position. More...
 
static MatrixD CreateConstrainedBillboard (Vector3D objectPosition, Vector3D cameraPosition, Vector3D rotateAxis, Vector3D?cameraForwardVector, Vector3D?objectForwardVector)
 Creates a cylindrical billboard that rotates around a specified axis. More...
 
static void CreateConstrainedBillboard (ref Vector3D objectPosition, ref Vector3D cameraPosition, ref Vector3D rotateAxis, Vector3D?cameraForwardVector, Vector3D?objectForwardVector, out MatrixD result)
 Creates a cylindrical billboard that rotates around a specified axis. More...
 
static MatrixD CreateTranslation (Vector3D position)
 Creates a translation Matrix. More...
 
static MatrixD CreateTranslation (Vector3 position)
 
static void CreateTranslation (ref Vector3D position, out MatrixD result)
 Creates a translation Matrix. More...
 
static MatrixD CreateTranslation (double xPosition, double yPosition, double zPosition)
 Creates a translation Matrix. More...
 
static void CreateTranslation (double xPosition, double yPosition, double zPosition, out MatrixD result)
 Creates a translation Matrix. More...
 
static MatrixD CreateScale (double xScale, double yScale, double zScale)
 Creates a scaling Matrix. More...
 
static void CreateScale (double xScale, double yScale, double zScale, out MatrixD result)
 Creates a scaling Matrix. More...
 
static MatrixD CreateScale (Vector3D scales)
 Creates a scaling Matrix. More...
 
static void CreateScale (ref Vector3D scales, out MatrixD result)
 Creates a scaling Matrix. More...
 
static MatrixD CreateScale (double scale)
 Creates a scaling Matrix. More...
 
static void CreateScale (double scale, out MatrixD result)
 Creates a scaling Matrix. More...
 
static MatrixD CreateRotationX (double radians)
 Returns a matrix that can be used to rotate a set of vertices around the x-axis. More...
 
static void CreateRotationX (double radians, out MatrixD result)
 Populates data into a user-specified matrix that can be used to rotate a set of vertices around the x-axis. More...
 
static MatrixD CreateRotationY (double radians)
 Returns a matrix that can be used to rotate a set of vertices around the y-axis. More...
 
static void CreateRotationY (double radians, out MatrixD result)
 Populates data into a user-specified matrix that can be used to rotate a set of vertices around the y-axis. More...
 
static MatrixD CreateRotationZ (double radians)
 Returns a matrix that can be used to rotate a set of vertices around the z-axis. More...
 
static void CreateRotationZ (double radians, out MatrixD result)
 Populates data into a user-specified matrix that can be used to rotate a set of vertices around the z-axis. More...
 
static MatrixD CreateFromAxisAngle (Vector3D axis, double angle)
 Creates a new Matrix that rotates around an arbitrary vector. More...
 
static void CreateFromAxisAngle (ref Vector3D axis, double angle, out MatrixD result)
 Creates a new Matrix that rotates around an arbitrary vector. More...
 
static MatrixD CreatePerspectiveFieldOfView (double fieldOfView, double aspectRatio, double nearPlaneDistance, double farPlaneDistance)
 Builds a perspective projection matrix based on a field of view and returns by value. More...
 
static void CreatePerspectiveFieldOfView (double fieldOfView, double aspectRatio, double nearPlaneDistance, double farPlaneDistance, out MatrixD result)
 Builds a perspective projection matrix based on a field of view and returns by reference. More...
 
static MatrixD CreatePerspective (double width, double height, double nearPlaneDistance, double farPlaneDistance)
 Builds a perspective projection matrix and returns the result by value. More...
 
static void CreatePerspective (double width, double height, double nearPlaneDistance, double farPlaneDistance, out MatrixD result)
 Builds a perspective projection matrix and returns the result by reference. More...
 
static MatrixD CreatePerspectiveOffCenter (double left, double right, double bottom, double top, double nearPlaneDistance, double farPlaneDistance)
 Builds a customized, perspective projection matrix. More...
 
static void CreatePerspectiveOffCenter (double left, double right, double bottom, double top, double nearPlaneDistance, double farPlaneDistance, out MatrixD result)
 Builds a customized, perspective projection matrix. More...
 
static MatrixD CreateOrthographic (double width, double height, double zNearPlane, double zFarPlane)
 Builds an orthogonal projection matrix. More...
 
static void CreateOrthographic (double width, double height, double zNearPlane, double zFarPlane, out MatrixD result)
 Builds an orthogonal projection matrix. More...
 
static MatrixD CreateOrthographicOffCenter (double left, double right, double bottom, double top, double zNearPlane, double zFarPlane)
 Builds a customized, orthogonal projection matrix. More...
 
static void CreateOrthographicOffCenter (double left, double right, double bottom, double top, double zNearPlane, double zFarPlane, out MatrixD result)
 Builds a customized, orthogonal projection matrix. More...
 
static MatrixD CreateLookAt (Vector3D cameraPosition, Vector3D cameraTarget, Vector3 cameraUpVector)
 
static MatrixD CreateLookAt (Vector3D cameraPosition, Vector3D cameraTarget, Vector3D cameraUpVector)
 Creates a view matrix. More...
 
static Matrix CreateLookAtInverse (Vector3D cameraPosition, Vector3D cameraTarget, Vector3D cameraUpVector)
 
static void CreateLookAt (ref Vector3D cameraPosition, ref Vector3D cameraTarget, ref Vector3D cameraUpVector, out MatrixD result)
 Creates a view matrix. More...
 
static MatrixD CreateWorld (Vector3D position, Vector3 forward, Vector3 up)
 
static MatrixD CreateWorld (Vector3D position)
 
static MatrixD CreateWorld (Vector3D position, Vector3D forward, Vector3D up)
 Creates a world matrix with the specified parameters. More...
 
static void CreateWorld (ref Vector3D position, ref Vector3D forward, ref Vector3D up, out MatrixD result)
 Creates a world matrix with the specified parameters. More...
 
static MatrixD CreateFromQuaternion (Quaternion quaternion)
 Creates a rotation Matrix from a Quaternion. More...
 
static MatrixD CreateFromQuaternion (QuaternionD quaternion)
 
static void CreateFromQuaternion (ref Quaternion quaternion, out MatrixD result)
 Creates a rotation Matrix from a Quaternion. More...
 
static MatrixD CreateFromYawPitchRoll (double yaw, double pitch, double roll)
 Creates a new rotation matrix from a specified yaw, pitch, and roll. More...
 
static void CreateFromYawPitchRoll (double yaw, double pitch, double roll, out MatrixD result)
 Fills in a rotation matrix from a specified yaw, pitch, and roll. More...
 
static MatrixD CreateFromTransformScale (Quaternion orientation, Vector3D position, Vector3D scale)
 
static MatrixD CreateShadow (Vector3D lightDirection, Plane plane)
 Creates a Matrix that flattens geometry into a specified Plane as if casting a shadow from a specified light source. More...
 
static void CreateShadow (ref Vector3D lightDirection, ref Plane plane, out MatrixD result)
 Fills in a Matrix to flatten geometry into a specified Plane as if casting a shadow from a specified light source. More...
 
static MatrixD CreateReflection (Plane value)
 Creates a Matrix that reflects the coordinate system about a specified Plane. More...
 
static void CreateReflection (ref Plane value, out MatrixD result)
 Fills in an existing Matrix so that it reflects the coordinate system about a specified Plane. More...
 
static MatrixD Transform (MatrixD value, Quaternion rotation)
 Transforms a Matrix by applying a Quaternion rotation. More...
 
static void Transform (ref MatrixD value, ref Quaternion rotation, out MatrixD result)
 Transforms a Matrix by applying a Quaternion rotation. More...
 
static MatrixD Transpose (MatrixD matrix)
 Transposes the rows and columns of a matrix. More...
 
static void Transpose (ref MatrixD matrix, out MatrixD result)
 Transposes the rows and columns of a matrix. More...
 
static MatrixD Invert (MatrixD matrix)
 Calculates the inverse of a matrix. More...
 
static MatrixD Invert (ref MatrixD matrix)
 
static void Invert (ref MatrixD matrix, out MatrixD result)
 Calculates the inverse of a matrix. More...
 
static MatrixD Lerp (MatrixD matrix1, MatrixD matrix2, double amount)
 Linearly interpolates between the corresponding values of two matrices. More...
 
static void Lerp (ref MatrixD matrix1, ref MatrixD matrix2, double amount, out MatrixD result)
 Linearly interpolates between the corresponding values of two matrices. More...
 
static void Slerp (ref MatrixD matrix1, ref MatrixD matrix2, float amount, out MatrixD result)
 Performs spherical linear interpolation of position and rotation. More...
 
static void SlerpScale (ref MatrixD matrix1, ref MatrixD matrix2, float amount, out MatrixD result)
 Performs spherical linear interpolation of position and rotation and scale. More...
 
static void Slerp (MatrixD matrix1, MatrixD matrix2, float amount, out MatrixD result)
 Performs spherical linear interpolation of position and rotation. More...
 
static MatrixD Slerp (MatrixD matrix1, MatrixD matrix2, float amount)
 Performs spherical linear interpolation of position and rotation. More...
 
static void SlerpScale (MatrixD matrix1, MatrixD matrix2, float amount, out MatrixD result)
 Performs spherical linear interpolation of position and rotation and scale. More...
 
static MatrixD SlerpScale (MatrixD matrix1, MatrixD matrix2, float amount)
 Performs spherical linear interpolation of position and rotation and scale. More...
 
static MatrixD Negate (MatrixD matrix)
 Negates individual elements of a matrix. More...
 
static void Negate (ref MatrixD matrix, out MatrixD result)
 Negates individual elements of a matrix. More...
 
static MatrixD Add (MatrixD matrix1, MatrixD matrix2)
 Adds a matrix to another matrix. More...
 
static void Add (ref MatrixD matrix1, ref MatrixD matrix2, out MatrixD result)
 Adds a matrix to another matrix. More...
 
static Matrix Subtract (Matrix matrix1, Matrix matrix2)
 Subtracts matrices. More...
 
static void Subtract (ref MatrixD matrix1, ref MatrixD matrix2, out MatrixD result)
 Subtracts matrices. More...
 
static MatrixD Multiply (MatrixD matrix1, MatrixD matrix2)
 Multiplies a matrix by another matrix. More...
 
static MatrixD Multiply (MatrixD matrix1, Matrix matrix2)
 Multiplies a matrix by another matrix. More...
 
static void Multiply (ref MatrixD matrix1, ref Matrix matrix2, out MatrixD result)
 Multiplies a matrix by another matrix. More...
 
static void Multiply (ref Matrix matrix1, ref MatrixD matrix2, out MatrixD result)
 
static void Multiply (ref MatrixD matrix1, ref MatrixD matrix2, out MatrixD result)
 Multiplies a matrix by another matrix. More...
 
static MatrixD Multiply (MatrixD matrix1, double scaleFactor)
 Multiplies a matrix by a scalar value. More...
 
static void Multiply (ref MatrixD matrix1, double scaleFactor, out MatrixD result)
 Multiplies a matrix by a scalar value. More...
 
static MatrixD Divide (MatrixD matrix1, MatrixD matrix2)
 Divides the components of a matrix by the corresponding components of another matrix. More...
 
static void Divide (ref MatrixD matrix1, ref MatrixD matrix2, out MatrixD result)
 Divides the components of a matrix by the corresponding components of another matrix. More...
 
static MatrixD Divide (MatrixD matrix1, double divider)
 Divides the components of a matrix by a scalar. More...
 
static void Divide (ref MatrixD matrix1, double divider, out MatrixD result)
 Divides the components of a matrix by a scalar. More...
 
static MatrixD CreateFromDir (Vector3D dir)
 
static MatrixD CreateFromDir (Vector3D dir, Vector3D suggestedUp)
 
static MatrixD Normalize (MatrixD matrix)
 
static MatrixD Orthogonalize (MatrixD rotationMatrix)
 
static MatrixD AlignRotationToAxes (ref MatrixD toAlign, ref MatrixD axisDefinitionMatrix)
 
static bool GetEulerAnglesXYZ (ref MatrixD mat, out Vector3D xyz)
 
static MatrixD SwapYZCoordinates (MatrixD m)
 
static implicit operator Matrix (MatrixD m)
 
static implicit operator MatrixD (Matrix m)
 

Public Attributes

double M11
 Value at row 1 column 1 of the matrix. More...
 
double M12
 Value at row 1 column 2 of the matrix. More...
 
double M13
 Value at row 1 column 3 of the matrix. More...
 
double M14
 Value at row 1 column 4 of the matrix. More...
 
double M21
 Value at row 2 column 1 of the matrix. More...
 
double M22
 Value at row 2 column 2 of the matrix. More...
 
double M23
 Value at row 2 column 3 of the matrix. More...
 
double M24
 Value at row 2 column 4 of the matrix. More...
 
double M31
 Value at row 3 column 1 of the matrix. More...
 
double M32
 Value at row 3 column 2 of the matrix. More...
 
double M33
 Value at row 3 column 3 of the matrix. More...
 
double M34
 Value at row 3 column 4 of the matrix. More...
 
double M41
 Value at row 4 column 1 of the matrix. More...
 
double M42
 Value at row 4 column 2 of the matrix. More...
 
double M43
 Value at row 4 column 3 of the matrix. More...
 
double M44
 Value at row 4 column 4 of the matrix. More...
 

Static Public Attributes

static MatrixD Identity = new MatrixD(1, 0.0, 0.0, 0.0, 0.0, 1, 0.0, 0.0, 0.0, 0.0, 1, 0.0, 0.0, 0.0, 0.0, 1)
 
static MatrixD Zero = new MatrixD(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
 

Properties

Vector3D Col0 [get]
 
Vector3D Col1 [get]
 
Vector3D Col2 [get]
 
Vector3D Up [get, set]
 Gets and sets the up vector of the Matrix. More...
 
Vector3D Down [get, set]
 Gets and sets the down vector of the Matrix. More...
 
Vector3D Right [get, set]
 Gets and sets the right vector of the Matrix. More...
 
Vector3D Left [get, set]
 Gets and sets the left vector of the Matrix. More...
 
Vector3D Forward [get, set]
 Gets and sets the forward vector of the Matrix. More...
 
Vector3D Backward [get, set]
 Gets and sets the backward vector of the Matrix. More...
 
Vector3D Scale [get]
 
Vector3D Translation [get, set]
 Gets and sets the translation vector of the Matrix. More...
 
double this[int row, int column] [get, set]
 

Detailed Description

Defines a matrix.

Definition at line 15 of file MatrixD.cs.

Constructor & Destructor Documentation

static VRageMath.MatrixD.MatrixD ( )
inlinestatic

Definition at line 478 of file MatrixD.cs.

VRageMath.MatrixD.MatrixD ( double  m11,
double  m12,
double  m13,
double  m14,
double  m21,
double  m22,
double  m23,
double  m24,
double  m31,
double  m32,
double  m33,
double  m34,
double  m41,
double  m42,
double  m43,
double  m44 
)
inline

Initializes a new instance of Matrix.

Parameters
m11Value to initialize m11 to.
m12Value to initialize m12 to.
m13Value to initialize m13 to.
m14Value to initialize m14 to.
m21Value to initialize m21 to.
m22Value to initialize m22 to.
m23Value to initialize m23 to.
m24Value to initialize m24 to.
m31Value to initialize m31 to.
m32Value to initialize m32 to.
m33Value to initialize m33 to.
m34Value to initialize m34 to.
m41Value to initialize m41 to.
m42Value to initialize m42 to.
m43Value to initialize m43 to.
m44Value to initialize m44 to.

Definition at line 486 of file MatrixD.cs.

VRageMath.MatrixD.MatrixD ( double  m11,
double  m12,
double  m13,
double  m21,
double  m22,
double  m23,
double  m31,
double  m32,
double  m33 
)
inline

Initializes a new instance of Matrix with rotation data

Parameters
m11Value to initialize m11 to.
m12Value to initialize m12 to.
m13Value to initialize m13 to.
m14Value to initialize m14 to.
m21Value to initialize m21 to.
m22Value to initialize m22 to.
m23Value to initialize m23 to.
m24Value to initialize m24 to.
m31Value to initialize m31 to.
m32Value to initialize m32 to.
m33Value to initialize m33 to.
m34Value to initialize m34 to.
m41Value to initialize m41 to.
m42Value to initialize m42 to.
m43Value to initialize m43 to.
m44Value to initialize m44 to.

Definition at line 511 of file MatrixD.cs.

VRageMath.MatrixD.MatrixD ( Matrix  m)
inline

Definition at line 531 of file MatrixD.cs.

Member Function Documentation

static MatrixD VRageMath.MatrixD.Add ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Adds a matrix to another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 2923 of file MatrixD.cs.

static void VRageMath.MatrixD.Add ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
out MatrixD  result 
)
inlinestatic

Adds a matrix to another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.
result[OutAttribute] Resulting matrix.

Definition at line 2949 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.AlignRotationToAxes ( ref MatrixD  toAlign,
ref MatrixD  axisDefinitionMatrix 
)
inlinestatic

Definition at line 3474 of file MatrixD.cs.

void VRageMath.MatrixD.AssertIsValid ( )
inline

Definition at line 3357 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateBillboard ( Vector3D  objectPosition,
Vector3D  cameraPosition,
Vector3D  cameraUpVector,
Vector3D cameraForwardVector 
)
inlinestatic

Creates a spherical billboard that rotates around a specified object position.

Parameters
objectPositionPosition of the object the billboard will rotate around.
cameraPositionPosition of the camera.
cameraUpVectorThe up vector of the camera.
cameraForwardVectorOptional forward vector of the camera.

Definition at line 849 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateBillboard ( ref Vector3D  objectPosition,
ref Vector3D  cameraPosition,
ref Vector3D  cameraUpVector,
Vector3D cameraForwardVector,
out MatrixD  result 
)
inlinestatic

Creates a spherical billboard that rotates around a specified object position.

Parameters
objectPositionPosition of the object the billboard will rotate around.
cameraPositionPosition of the camera.
cameraUpVectorThe up vector of the camera.
cameraForwardVectorOptional forward vector of the camera.
result[OutAttribute] The created billboard matrix.

Definition at line 889 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateConstrainedBillboard ( Vector3D  objectPosition,
Vector3D  cameraPosition,
Vector3D  rotateAxis,
Vector3D cameraForwardVector,
Vector3D objectForwardVector 
)
inlinestatic

Creates a cylindrical billboard that rotates around a specified axis.

Parameters
objectPositionPosition of the object the billboard will rotate around.
cameraPositionPosition of the camera.
rotateAxisAxis to rotate the billboard around.
cameraForwardVectorOptional forward vector of the camera.
objectForwardVectorOptional forward vector of the object.

Definition at line 927 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateConstrainedBillboard ( ref Vector3D  objectPosition,
ref Vector3D  cameraPosition,
ref Vector3D  rotateAxis,
Vector3D cameraForwardVector,
Vector3D objectForwardVector,
out MatrixD  result 
)
inlinestatic

Creates a cylindrical billboard that rotates around a specified axis.

Parameters
objectPositionPosition of the object the billboard will rotate around.
cameraPositionPosition of the camera.
rotateAxisAxis to rotate the billboard around.
cameraForwardVectorOptional forward vector of the camera.
objectForwardVectorOptional forward vector of the object.
result[OutAttribute] The created billboard matrix.

Definition at line 990 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromAxisAngle ( Vector3D  axis,
double  angle 
)
inlinestatic

Creates a new Matrix that rotates around an arbitrary vector.

Parameters
axisThe axis to rotate around.
angleThe angle to rotate around the vector.

Definition at line 1499 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateFromAxisAngle ( ref Vector3D  axis,
double  angle,
out MatrixD  result 
)
inlinestatic

Creates a new Matrix that rotates around an arbitrary vector.

Parameters
axisThe axis to rotate around.
angleThe angle to rotate around the vector.
result[OutAttribute] The created Matrix.

Definition at line 1536 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromDir ( Vector3D  dir)
inlinestatic

Definition at line 3404 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromDir ( Vector3D  dir,
Vector3D  suggestedUp 
)
inlinestatic

Definition at line 3430 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromQuaternion ( Quaternion  quaternion)
inlinestatic

Creates a rotation Matrix from a Quaternion.

Parameters
quaternionQuaternion to create the Matrix from.

Definition at line 2023 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromQuaternion ( QuaternionD  quaternion)
inlinestatic

Definition at line 2054 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateFromQuaternion ( ref Quaternion  quaternion,
out MatrixD  result 
)
inlinestatic

Creates a rotation Matrix from a Quaternion.

Parameters
quaternionQuaternion to create the Matrix from.
result[OutAttribute] The created Matrix.

Definition at line 2089 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromTransformScale ( Quaternion  orientation,
Vector3D  position,
Vector3D  scale 
)
inlinestatic

Definition at line 2142 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateFromYawPitchRoll ( double  yaw,
double  pitch,
double  roll 
)
inlinestatic

Creates a new rotation matrix from a specified yaw, pitch, and roll.

Parameters
yawAngle of rotation, in radians, around the y-axis.
pitchAngle of rotation, in radians, around the x-axis.
rollAngle of rotation, in radians, around the z-axis.

Definition at line 2122 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateFromYawPitchRoll ( double  yaw,
double  pitch,
double  roll,
out MatrixD  result 
)
inlinestatic

Fills in a rotation matrix from a specified yaw, pitch, and roll.

Parameters
yawAngle of rotation, in radians, around the y-axis.
pitchAngle of rotation, in radians, around the x-axis.
rollAngle of rotation, in radians, around the z-axis.
result[OutAttribute] An existing matrix filled in to represent the specified yaw, pitch, and roll.

Definition at line 2135 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateLookAt ( Vector3D  cameraPosition,
Vector3D  cameraTarget,
Vector3  cameraUpVector 
)
inlinestatic

Definition at line 1868 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateLookAt ( Vector3D  cameraPosition,
Vector3D  cameraTarget,
Vector3D  cameraUpVector 
)
inlinestatic

Creates a view matrix.

Parameters
cameraPositionThe position of the camera.
cameraTargetThe target towards which the camera is pointing.
cameraUpVectorThe direction that is "up" from the camera's point of view.

Definition at line 1876 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateLookAt ( ref Vector3D  cameraPosition,
ref Vector3D  cameraTarget,
ref Vector3D  cameraUpVector,
out MatrixD  result 
)
inlinestatic

Creates a view matrix.

Parameters
cameraPositionThe position of the camera.
cameraTargetThe target towards which the camera is pointing.
cameraUpVectorThe direction that is "up" from the camera's point of view.
result[OutAttribute] The created view matrix.

Definition at line 1930 of file MatrixD.cs.

static Matrix VRageMath.MatrixD.CreateLookAtInverse ( Vector3D  cameraPosition,
Vector3D  cameraTarget,
Vector3D  cameraUpVector 
)
inlinestatic

Definition at line 1901 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateOrthographic ( double  width,
double  height,
double  zNearPlane,
double  zFarPlane 
)
inlinestatic

Builds an orthogonal projection matrix.

Parameters
widthWidth of the view volume.
heightHeight of the view volume.
zNearPlaneMinimum z-value of the view volume.
zFarPlaneMaximum z-value of the view volume.

Definition at line 1797 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateOrthographic ( double  width,
double  height,
double  zNearPlane,
double  zFarPlane,
out MatrixD  result 
)
inlinestatic

Builds an orthogonal projection matrix.

Parameters
widthWidth of the view volume.
heightHeight of the view volume.
zNearPlaneMinimum z-value of the view volume.
zFarPlaneMaximum z-value of the view volume.
result[OutAttribute] The projection matrix.

Definition at line 1816 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateOrthographicOffCenter ( double  left,
double  right,
double  bottom,
double  top,
double  zNearPlane,
double  zFarPlane 
)
inlinestatic

Builds a customized, orthogonal projection matrix.

Parameters
leftMinimum x-value of the view volume.
rightMaximum x-value of the view volume.
bottomMinimum y-value of the view volume.
topMaximum y-value of the view volume.
zNearPlaneMinimum z-value of the view volume.
zFarPlaneMaximum z-value of the view volume.

Definition at line 1833 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateOrthographicOffCenter ( double  left,
double  right,
double  bottom,
double  top,
double  zNearPlane,
double  zFarPlane,
out MatrixD  result 
)
inlinestatic

Builds a customized, orthogonal projection matrix.

Parameters
leftMinimum x-value of the view volume.
rightMaximum x-value of the view volume.
bottomMinimum y-value of the view volume.
topMaximum y-value of the view volume.
zNearPlaneMinimum z-value of the view volume.
zFarPlaneMaximum z-value of the view volume.
result[OutAttribute] The projection matrix.

Definition at line 1853 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreatePerspective ( double  width,
double  height,
double  nearPlaneDistance,
double  farPlaneDistance 
)
inlinestatic

Builds a perspective projection matrix and returns the result by value.

Parameters
widthWidth of the view volume at the near view plane.
heightHeight of the view volume at the near view plane.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to the far view plane.

Definition at line 1655 of file MatrixD.cs.

static void VRageMath.MatrixD.CreatePerspective ( double  width,
double  height,
double  nearPlaneDistance,
double  farPlaneDistance,
out MatrixD  result 
)
inlinestatic

Builds a perspective projection matrix and returns the result by reference.

Parameters
widthWidth of the view volume at the near view plane.
heightHeight of the view volume at the near view plane.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to the far view plane.
result[OutAttribute] The projection matrix.

Definition at line 1691 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreatePerspectiveFieldOfView ( double  fieldOfView,
double  aspectRatio,
double  nearPlaneDistance,
double  farPlaneDistance 
)
inlinestatic

Builds a perspective projection matrix based on a field of view and returns by value.

Parameters
fieldOfViewField of view in the y direction, in radians.
aspectRatioAspect ratio, defined as view space width divided by height. To match the aspect ratio of the viewport, the property AspectRatio.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to the far view plane.

Definition at line 1571 of file MatrixD.cs.

static void VRageMath.MatrixD.CreatePerspectiveFieldOfView ( double  fieldOfView,
double  aspectRatio,
double  nearPlaneDistance,
double  farPlaneDistance,
out MatrixD  result 
)
inlinestatic

Builds a perspective projection matrix based on a field of view and returns by reference.

Parameters
fieldOfViewField of view in the y direction, in radians.
aspectRatioAspect ratio, defined as view space width divided by height. To match the aspect ratio of the viewport, the property AspectRatio.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to the far view plane.
result[OutAttribute] The perspective projection matrix.

Definition at line 1614 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreatePerspectiveOffCenter ( double  left,
double  right,
double  bottom,
double  top,
double  nearPlaneDistance,
double  farPlaneDistance 
)
inlinestatic

Builds a customized, perspective projection matrix.

Parameters
leftMinimum x-value of the view volume at the near view plane.
rightMaximum x-value of the view volume at the near view plane.
bottomMinimum y-value of the view volume at the near view plane.
topMaximum y-value of the view volume at the near view plane.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to of the far view plane.

Definition at line 1725 of file MatrixD.cs.

static void VRageMath.MatrixD.CreatePerspectiveOffCenter ( double  left,
double  right,
double  bottom,
double  top,
double  nearPlaneDistance,
double  farPlaneDistance,
out MatrixD  result 
)
inlinestatic

Builds a customized, perspective projection matrix.

Parameters
leftMinimum x-value of the view volume at the near view plane.
rightMaximum x-value of the view volume at the near view plane.
bottomMinimum y-value of the view volume at the near view plane.
topMaximum y-value of the view volume at the near view plane.
nearPlaneDistanceDistance to the near view plane.
farPlaneDistanceDistance to of the far view plane.
result[OutAttribute] The created projection matrix.

Definition at line 1762 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateReflection ( Plane  value)
inlinestatic

Creates a Matrix that reflects the coordinate system about a specified Plane.

Parameters
valueThe Plane about which to create a reflection.

Definition at line 2218 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateReflection ( ref Plane  value,
out MatrixD  result 
)
inlinestatic

Fills in an existing Matrix so that it reflects the coordinate system about a specified Plane.

Parameters
valueThe Plane about which to create a reflection.
result[OutAttribute] A Matrix that creates the reflection.

Definition at line 2251 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateRotationX ( double  radians)
inlinestatic

Returns a matrix that can be used to rotate a set of vertices around the x-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the x-axis. Note that you can use ToRadians to convert degrees to radians.

Definition at line 1337 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateRotationX ( double  radians,
out MatrixD  result 
)
inlinestatic

Populates data into a user-specified matrix that can be used to rotate a set of vertices around the x-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the x-axis. Note that you can use ToRadians to convert degrees to radians.
result[OutAttribute] The matrix in which to place the calculated data.

Definition at line 1365 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateRotationY ( double  radians)
inlinestatic

Returns a matrix that can be used to rotate a set of vertices around the y-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the y-axis. Note that you can use ToRadians to convert degrees to radians.

Definition at line 1391 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateRotationY ( double  radians,
out MatrixD  result 
)
inlinestatic

Populates data into a user-specified matrix that can be used to rotate a set of vertices around the y-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the y-axis. Note that you can use ToRadians to convert degrees to radians.
result[OutAttribute] The matrix in which to place the calculated data.

Definition at line 1419 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateRotationZ ( double  radians)
inlinestatic

Returns a matrix that can be used to rotate a set of vertices around the z-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the z-axis. Note that you can use ToRadians to convert degrees to radians.

Definition at line 1445 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateRotationZ ( double  radians,
out MatrixD  result 
)
inlinestatic

Populates data into a user-specified matrix that can be used to rotate a set of vertices around the z-axis.

Parameters
radiansThe amount, in radians, in which to rotate around the z-axis. Note that you can use ToRadians to convert degrees to radians.
result[OutAttribute] The rotation matrix.

Definition at line 1473 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateScale ( double  xScale,
double  yScale,
double  zScale 
)
inlinestatic

Creates a scaling Matrix.

Parameters
xScaleValue to scale by on the x-axis.
yScaleValue to scale by on the y-axis.
zScaleValue to scale by on the z-axis.

Definition at line 1173 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateScale ( double  xScale,
double  yScale,
double  zScale,
out MatrixD  result 
)
inlinestatic

Creates a scaling Matrix.

Parameters
xScaleValue to scale by on the x-axis.
yScaleValue to scale by on the y-axis.
zScaleValue to scale by on the z-axis.
result[OutAttribute] The created scaling Matrix.

Definition at line 1202 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateScale ( Vector3D  scales)
inlinestatic

Creates a scaling Matrix.

Parameters
scalesAmounts to scale by on the x, y, and z axes.

Definition at line 1229 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateScale ( ref Vector3D  scales,
out MatrixD  result 
)
inlinestatic

Creates a scaling Matrix.

Parameters
scalesAmounts to scale by on the x, y, and z axes.
result[OutAttribute] The created scaling Matrix.

Definition at line 1258 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateScale ( double  scale)
inlinestatic

Creates a scaling Matrix.

Parameters
scaleAmount to scale by.

Definition at line 1285 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateScale ( double  scale,
out MatrixD  result 
)
inlinestatic

Creates a scaling Matrix.

Parameters
scaleValue to scale by.
result[OutAttribute] The created scaling Matrix.

Definition at line 1312 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateShadow ( Vector3D  lightDirection,
Plane  plane 
)
inlinestatic

Creates a Matrix that flattens geometry into a specified Plane as if casting a shadow from a specified light source.

Parameters
lightDirectionA Vector3 specifying the direction from which the light that will cast the shadow is coming.
planeThe Plane onto which the new matrix should flatten geometry so as to cast a shadow.

Definition at line 2154 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateShadow ( ref Vector3D  lightDirection,
ref Plane  plane,
out MatrixD  result 
)
inlinestatic

Fills in a Matrix to flatten geometry into a specified Plane as if casting a shadow from a specified light source.

Parameters
lightDirectionA Vector3 specifying the direction from which the light that will cast the shadow is coming.
planeThe Plane onto which the new matrix should flatten geometry so as to cast a shadow.
result[OutAttribute] A Matrix that can be used to flatten geometry onto the specified plane from the specified direction.

Definition at line 2187 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateTranslation ( Vector3D  position)
inlinestatic

Creates a translation Matrix.

Parameters
positionAmounts to translate by on the x, y, and z axes.

Definition at line 1051 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateTranslation ( Vector3  position)
inlinestatic

Definition at line 1073 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateTranslation ( ref Vector3D  position,
out MatrixD  result 
)
inlinestatic

Creates a translation Matrix.

Parameters
positionAmounts to translate by on the x, y, and z axes.
result[OutAttribute] The created translation Matrix.

Definition at line 1099 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateTranslation ( double  xPosition,
double  yPosition,
double  zPosition 
)
inlinestatic

Creates a translation Matrix.

Parameters
xPositionValue to translate by on the x-axis.
yPositionValue to translate by on the y-axis.
zPositionValue to translate by on the z-axis.

Definition at line 1123 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateTranslation ( double  xPosition,
double  yPosition,
double  zPosition,
out MatrixD  result 
)
inlinestatic

Creates a translation Matrix.

Parameters
xPositionValue to translate by on the x-axis.
yPositionValue to translate by on the y-axis.
zPositionValue to translate by on the z-axis.
result[OutAttribute] The created translation Matrix.

Definition at line 1149 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateWorld ( Vector3D  position,
Vector3  forward,
Vector3  up 
)
inlinestatic

Definition at line 1953 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateWorld ( Vector3D  position)
inlinestatic

Definition at line 1958 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.CreateWorld ( Vector3D  position,
Vector3D  forward,
Vector3D  up 
)
inlinestatic

Creates a world matrix with the specified parameters.

Parameters
positionPosition of the object. This value is used in translation operations.
forwardForward direction of the object.
upUpward direction of the object; usually [0, 1, 0].

Definition at line 1967 of file MatrixD.cs.

static void VRageMath.MatrixD.CreateWorld ( ref Vector3D  position,
ref Vector3D  forward,
ref Vector3D  up,
out MatrixD  result 
)
inlinestatic

Creates a world matrix with the specified parameters.

Parameters
positionPosition of the object. This value is used in translation operations.
forwardForward direction of the object.
upUpward direction of the object; usually [0, 1, 0].
result[OutAttribute] The created world matrix.

Definition at line 1996 of file MatrixD.cs.

double VRageMath.MatrixD.Determinant ( )
inline

Calculates the determinant of the matrix.

Definition at line 2570 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Divide ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Divides the components of a matrix by the corresponding components of another matrix.

Parameters
matrix1Source matrix.
matrix2The divisor.

Definition at line 3245 of file MatrixD.cs.

static void VRageMath.MatrixD.Divide ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
out MatrixD  result 
)
inlinestatic

Divides the components of a matrix by the corresponding components of another matrix.

Parameters
matrix1Source matrix.
matrix2The divisor.
result[OutAttribute] Result of the division.

Definition at line 3271 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Divide ( MatrixD  matrix1,
double  divider 
)
inlinestatic

Divides the components of a matrix by a scalar.

Parameters
matrix1Source matrix.
dividerThe divisor.

Definition at line 3295 of file MatrixD.cs.

static void VRageMath.MatrixD.Divide ( ref MatrixD  matrix1,
double  divider,
out MatrixD  result 
)
inlinestatic

Divides the components of a matrix by a scalar.

Parameters
matrix1Source matrix.
dividerThe divisor.
result[OutAttribute] Result of the division.

Definition at line 3322 of file MatrixD.cs.

bool VRageMath.MatrixD.Equals ( MatrixD  other)
inline

Determines whether the specified Object is equal to the Matrix.

Parameters
otherThe Object to compare with the current Matrix.

Definition at line 2452 of file MatrixD.cs.

override bool VRageMath.MatrixD.Equals ( object  obj)
inline

Returns a value that indicates whether the current instance is equal to a specified object.

Parameters
objObject with which to make the comparison.

Definition at line 2485 of file MatrixD.cs.

bool VRageMath.MatrixD.EqualsFast ( ref MatrixD  other,
double  epsilon = 0.0001 
)
inline

Compares just position, forward and up

Definition at line 2463 of file MatrixD.cs.

Base6Directions.Direction VRageMath.MatrixD.GetClosestDirection ( Vector3D  referenceVector)
inline

Definition at line 327 of file MatrixD.cs.

Base6Directions.Direction VRageMath.MatrixD.GetClosestDirection ( ref Vector3D  referenceVector)
inline

Definition at line 332 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.GetDirectionVector ( Base6Directions.Direction  direction)
inline

Gets the base vector of the matrix, corresponding to the given direction

Definition at line 274 of file MatrixD.cs.

static bool VRageMath.MatrixD.GetEulerAnglesXYZ ( ref MatrixD  mat,
out Vector3D  xyz 
)
inlinestatic

Definition at line 3569 of file MatrixD.cs.

override int VRageMath.MatrixD.GetHashCode ( )
inline

Gets the hash code of this object.

Definition at line 2496 of file MatrixD.cs.

MatrixD VRageMath.MatrixD.GetOrientation ( )
inline

Gets the orientation.

Returns

Definition at line 3347 of file MatrixD.cs.

Vector4 VRageMath.MatrixD.GetRow ( int  row)
inline

Definition at line 2388 of file MatrixD.cs.

bool VRageMath.MatrixD.HasNoTranslationOrPerspective ( )
inline

Returns true if this matrix represents invertible (you can call Invert on it) linear (it does not contain translation or perspective transformation) transformation. Such matrix consist solely of rotations, shearing, mirroring and scaling. It can be orthogonalized to create an orthogonal rotation matrix.

Definition at line 3392 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Invert ( MatrixD  matrix)
inlinestatic

Calculates the inverse of a matrix.

Parameters
matrixSource matrix.

Definition at line 2601 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Invert ( ref MatrixD  matrix)
inlinestatic

Definition at line 2606 of file MatrixD.cs.

static void VRageMath.MatrixD.Invert ( ref MatrixD  matrix,
out MatrixD  result 
)
inlinestatic

Calculates the inverse of a matrix.

Parameters
matrixThe source matrix.
result[OutAttribute] The inverse of matrix. The same matrix can be used for both arguments.

Definition at line 2671 of file MatrixD.cs.

bool VRageMath.MatrixD.IsMirrored ( )
inline

Definition at line 3633 of file MatrixD.cs.

bool VRageMath.MatrixD.IsNan ( )
inline

Definition at line 3367 of file MatrixD.cs.

bool VRageMath.MatrixD.IsRotation ( )
inline

Definition at line 3372 of file MatrixD.cs.

bool VRageMath.MatrixD.IsValid ( )
inline

Definition at line 3362 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Lerp ( MatrixD  matrix1,
MatrixD  matrix2,
double  amount 
)
inlinestatic

Linearly interpolates between the corresponding values of two matrices.

Parameters
matrix1Source matrix.
matrix2Source matrix.
amountInterpolation value.

Definition at line 2734 of file MatrixD.cs.

static void VRageMath.MatrixD.Lerp ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
double  amount,
out MatrixD  result 
)
inlinestatic

Linearly interpolates between the corresponding values of two matrices.

Parameters
matrix1Source matrix.
matrix2Source matrix.
amountInterpolation value.
result[OutAttribute] Resulting matrix.

Definition at line 2760 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Multiply ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 3023 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Multiply ( MatrixD  matrix1,
Matrix  matrix2 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 3050 of file MatrixD.cs.

static void VRageMath.MatrixD.Multiply ( ref MatrixD  matrix1,
ref Matrix  matrix2,
out MatrixD  result 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.
result[OutAttribute] Result of the multiplication.

Definition at line 3077 of file MatrixD.cs.

static void VRageMath.MatrixD.Multiply ( ref Matrix  matrix1,
ref MatrixD  matrix2,
out MatrixD  result 
)
inlinestatic

Definition at line 3113 of file MatrixD.cs.

static void VRageMath.MatrixD.Multiply ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
out MatrixD  result 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.
result[OutAttribute] Result of the multiplication.

Definition at line 3153 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Multiply ( MatrixD  matrix1,
double  scaleFactor 
)
inlinestatic

Multiplies a matrix by a scalar value.

Parameters
matrix1Source matrix.
scaleFactorScalar value.

Definition at line 3193 of file MatrixD.cs.

static void VRageMath.MatrixD.Multiply ( ref MatrixD  matrix1,
double  scaleFactor,
out MatrixD  result 
)
inlinestatic

Multiplies a matrix by a scalar value.

Parameters
matrix1Source matrix.
scaleFactorScalar value.
result[OutAttribute] The result of the multiplication.

Definition at line 3220 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Negate ( MatrixD  matrix)
inlinestatic

Negates individual elements of a matrix.

Parameters
matrixSource matrix.

Definition at line 2873 of file MatrixD.cs.

static void VRageMath.MatrixD.Negate ( ref MatrixD  matrix,
out MatrixD  result 
)
inlinestatic

Negates individual elements of a matrix.

Parameters
matrixSource matrix.
result[OutAttribute] Negated matrix.

Definition at line 2899 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Normalize ( MatrixD  matrix)
inlinestatic

Definition at line 3438 of file MatrixD.cs.

static implicit VRageMath.MatrixD.operator Matrix ( MatrixD  m)
inlinestatic

Definition at line 3638 of file MatrixD.cs.

static implicit VRageMath.MatrixD.operator MatrixD ( Matrix  m)
inlinestatic

Definition at line 3647 of file MatrixD.cs.

static bool VRageMath.MatrixD.operator!= ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Tests a matrix for inequality with another matrix.

Parameters
matrix1The matrix on the left of the equal sign.
matrix2The matrix on the right of the equal sign.

Definition at line 594 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator* ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 658 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator* ( MatrixD  matrix1,
Matrix  matrix2 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 690 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator* ( Matrix  matrix1,
MatrixD  matrix2 
)
inlinestatic

Multiplies a matrix by another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 716 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator* ( MatrixD  matrix,
double  scaleFactor 
)
inlinestatic

Multiplies a matrix by a scalar value.

Parameters
matrixSource matrix.
scaleFactorScalar value.

Definition at line 742 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator* ( double  scaleFactor,
MatrixD  matrix 
)
inlinestatic

Multiplies a matrix by a scalar value.

Parameters
scaleFactorScalar value.
matrixSource matrix.

Definition at line 769 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator+ ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Adds a matrix to another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 606 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator- ( MatrixD  matrix1)
inlinestatic

Negates individual elements of a matrix.

Parameters
matrix1Source matrix.

Definition at line 556 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator- ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Subtracts matrices.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 632 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator/ ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Divides the components of a matrix by the corresponding components of another matrix.

Parameters
matrix1Source matrix.
matrix2The divisor.

Definition at line 796 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.operator/ ( MatrixD  matrix1,
double  divider 
)
inlinestatic

Divides the components of a matrix by a scalar.

Parameters
matrix1Source matrix.
dividerThe divisor.

Definition at line 822 of file MatrixD.cs.

static bool VRageMath.MatrixD.operator== ( MatrixD  matrix1,
MatrixD  matrix2 
)
inlinestatic

Compares a matrix for equality with another matrix.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 582 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Orthogonalize ( MatrixD  rotationMatrix)
inlinestatic

Definition at line 3448 of file MatrixD.cs.

static void VRageMath.MatrixD.Rescale ( ref MatrixD  matrix,
double  scale 
)
inlinestatic

Same result as Matrix.CreateScale(scale) * matrix, but much faster

Definition at line 390 of file MatrixD.cs.

static void VRageMath.MatrixD.Rescale ( ref MatrixD  matrix,
float  scale 
)
inlinestatic

Same result as Matrix.CreateScale(scale) * matrix, but much faster

Definition at line 409 of file MatrixD.cs.

static void VRageMath.MatrixD.Rescale ( ref MatrixD  matrix,
ref Vector3D  scale 
)
inlinestatic

Same result as Matrix.CreateScale(scale) * matrix, but much faster

Definition at line 428 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Rescale ( MatrixD  matrix,
double  scale 
)
inlinestatic

Definition at line 444 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Rescale ( MatrixD  matrix,
Vector3D  scale 
)
inlinestatic

Definition at line 451 of file MatrixD.cs.

void VRageMath.MatrixD.SetDirectionVector ( Base6Directions.Direction  direction,
Vector3D  newValue 
)
inline

Sets the base vector of the matrix, corresponding to the given direction

Definition at line 299 of file MatrixD.cs.

void VRageMath.MatrixD.SetRow ( int  row,
Vector4  value 
)
inline

Definition at line 2400 of file MatrixD.cs.

static void VRageMath.MatrixD.Slerp ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
float  amount,
out MatrixD  result 
)
inlinestatic

Performs spherical linear interpolation of position and rotation.

Definition at line 2783 of file MatrixD.cs.

static void VRageMath.MatrixD.Slerp ( MatrixD  matrix1,
MatrixD  matrix2,
float  amount,
out MatrixD  result 
)
inlinestatic

Performs spherical linear interpolation of position and rotation.

Definition at line 2835 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Slerp ( MatrixD  matrix1,
MatrixD  matrix2,
float  amount 
)
inlinestatic

Performs spherical linear interpolation of position and rotation.

Definition at line 2843 of file MatrixD.cs.

static void VRageMath.MatrixD.SlerpScale ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
float  amount,
out MatrixD  result 
)
inlinestatic

Performs spherical linear interpolation of position and rotation and scale.

Definition at line 2801 of file MatrixD.cs.

static void VRageMath.MatrixD.SlerpScale ( MatrixD  matrix1,
MatrixD  matrix2,
float  amount,
out MatrixD  result 
)
inlinestatic

Performs spherical linear interpolation of position and rotation and scale.

Definition at line 2853 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.SlerpScale ( MatrixD  matrix1,
MatrixD  matrix2,
float  amount 
)
inlinestatic

Performs spherical linear interpolation of position and rotation and scale.

Definition at line 2861 of file MatrixD.cs.

static Matrix VRageMath.MatrixD.Subtract ( Matrix  matrix1,
Matrix  matrix2 
)
inlinestatic

Subtracts matrices.

Parameters
matrix1Source matrix.
matrix2Source matrix.

Definition at line 2973 of file MatrixD.cs.

static void VRageMath.MatrixD.Subtract ( ref MatrixD  matrix1,
ref MatrixD  matrix2,
out MatrixD  result 
)
inlinestatic

Subtracts matrices.

Parameters
matrix1Source matrix.
matrix2Source matrix.
result[OutAttribute] Result of the subtraction.

Definition at line 2999 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.SwapYZCoordinates ( MatrixD  m)
inlinestatic

Definition at line 3618 of file MatrixD.cs.

override string VRageMath.MatrixD.ToString ( )
inline

Retrieves a string representation of the current object.

Definition at line 2442 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Transform ( MatrixD  value,
Quaternion  rotation 
)
inlinestatic

Transforms a Matrix by applying a Quaternion rotation.

Parameters
valueThe Matrix to transform.
rotationThe rotation to apply, expressed as a Quaternion.

Definition at line 2284 of file MatrixD.cs.

static void VRageMath.MatrixD.Transform ( ref MatrixD  value,
ref Quaternion  rotation,
out MatrixD  result 
)
inlinestatic

Transforms a Matrix by applying a Quaternion rotation.

Parameters
valueThe Matrix to transform.
rotationThe rotation to apply, expressed as a Quaternion.
result[OutAttribute] An existing Matrix filled in with the result of the transform.

Definition at line 2331 of file MatrixD.cs.

static MatrixD VRageMath.MatrixD.Transpose ( MatrixD  matrix)
inlinestatic

Transposes the rows and columns of a matrix.

Parameters
matrixSource matrix.

Definition at line 2505 of file MatrixD.cs.

static void VRageMath.MatrixD.Transpose ( ref MatrixD  matrix,
out MatrixD  result 
)
inlinestatic

Transposes the rows and columns of a matrix.

Parameters
matrixSource matrix.
result[OutAttribute] Transposed matrix.

Definition at line 2531 of file MatrixD.cs.

Member Data Documentation

MatrixD VRageMath.MatrixD.Identity = new MatrixD(1, 0.0, 0.0, 0.0, 0.0, 1, 0.0, 0.0, 0.0, 0.0, 1, 0.0, 0.0, 0.0, 0.0, 1)
static

Definition at line 23 of file MatrixD.cs.

double VRageMath.MatrixD.M11

Value at row 1 column 1 of the matrix.

Definition at line 31 of file MatrixD.cs.

double VRageMath.MatrixD.M12

Value at row 1 column 2 of the matrix.

Definition at line 36 of file MatrixD.cs.

double VRageMath.MatrixD.M13

Value at row 1 column 3 of the matrix.

Definition at line 41 of file MatrixD.cs.

double VRageMath.MatrixD.M14

Value at row 1 column 4 of the matrix.

Definition at line 46 of file MatrixD.cs.

double VRageMath.MatrixD.M21

Value at row 2 column 1 of the matrix.

Definition at line 51 of file MatrixD.cs.

double VRageMath.MatrixD.M22

Value at row 2 column 2 of the matrix.

Definition at line 56 of file MatrixD.cs.

double VRageMath.MatrixD.M23

Value at row 2 column 3 of the matrix.

Definition at line 61 of file MatrixD.cs.

double VRageMath.MatrixD.M24

Value at row 2 column 4 of the matrix.

Definition at line 66 of file MatrixD.cs.

double VRageMath.MatrixD.M31

Value at row 3 column 1 of the matrix.

Definition at line 71 of file MatrixD.cs.

double VRageMath.MatrixD.M32

Value at row 3 column 2 of the matrix.

Definition at line 76 of file MatrixD.cs.

double VRageMath.MatrixD.M33

Value at row 3 column 3 of the matrix.

Definition at line 81 of file MatrixD.cs.

double VRageMath.MatrixD.M34

Value at row 3 column 4 of the matrix.

Definition at line 86 of file MatrixD.cs.

double VRageMath.MatrixD.M41

Value at row 4 column 1 of the matrix.

Definition at line 91 of file MatrixD.cs.

double VRageMath.MatrixD.M42

Value at row 4 column 2 of the matrix.

Definition at line 96 of file MatrixD.cs.

double VRageMath.MatrixD.M43

Value at row 4 column 3 of the matrix.

Definition at line 101 of file MatrixD.cs.

double VRageMath.MatrixD.M44

Value at row 4 column 4 of the matrix.

Definition at line 106 of file MatrixD.cs.

MatrixD VRageMath.MatrixD.Zero = new MatrixD(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
static

Definition at line 24 of file MatrixD.cs.

Property Documentation

Vector3D VRageMath.MatrixD.Backward
getset

Gets and sets the backward vector of the Matrix.

Definition at line 254 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Col0
get

Definition at line 109 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Col1
get

Definition at line 121 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Col2
get

Definition at line 133 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Down
getset

Gets and sets the down vector of the Matrix.

Definition at line 170 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Forward
getset

Gets and sets the forward vector of the Matrix.

Definition at line 233 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Left
getset

Gets and sets the left vector of the Matrix.

Definition at line 212 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Right
getset

Gets and sets the right vector of the Matrix.

Definition at line 191 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Scale
get

Definition at line 379 of file MatrixD.cs.

double VRageMath.MatrixD.this[int row, int column]
getset

Definition at line 2416 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Translation
getset

Gets and sets the translation vector of the Matrix.

Definition at line 461 of file MatrixD.cs.

Vector3D VRageMath.MatrixD.Up
getset

Gets and sets the up vector of the Matrix.

Definition at line 149 of file MatrixD.cs.


The documentation for this struct was generated from the following file: