This class represents 3D transformation
matrices that define affine (translation, rotation, and/or scaling
) transformations.
Inheritance Hierarchy
Namespace: Teigha.Geometry
Assembly: TD_Mgd (in TD_Mgd.dll) Version:
24.2.0.0
Syntax
public struct Matrix3d : IFormattable
Public Structure Matrix3d
Implements IFormattable
public value class Matrix3d : IFormattable
[<SealedAttribute>]
type Matrix3d =
struct
inherit ValueType
interface IFormattable
end
The Matrix3d type exposes the
following members.
Constructors
|
Name |
Description |
|
Matrix3d
|
Constructor for the Matrix3d class. Creates a matrix with
elements taken from the passed array. |
Top
Properties
Methods
|
Name |
Description |

|
AlignCoordinateSystem
|
Returns the matrix that maps the coordinate system defined by
the fromOrigin origin and the fromXAxis, fromYAxis and fromZAxis
axes, to the coordinate system defined by the toOrigin origin and
the toXAxis, toYAxis and toZAxis axes. |

|
Displacement
|
Returns the displacement (translation) matrix by the specified
vector. |
|
Equals
|
Checks objects for equality.
(Overrides ValueTypeEquals(Object)) |
|
GetDeterminant
|
Returns the determinant of this matrix. |
|
GetHashCode
|
Retrieves the object hash code.
(Overrides ValueTypeGetHashCode) |
|
GetScale
|
Returns the scale factor of this matrix. The scale factor is
the square root of the longest column vector of the linear part of
this matrix. |
|
GetType
|
Gets the Type of the current
instance.
(Inherited from Object) |
|
Inverse
|
Returns the inverse of this matrix. |
|
IsEqualTo(Matrix3d)
|
Checks whether this matrix is equal to the passed matrix. |
|
IsEqualTo(Matrix3d,
Tolerance)
|
Checks whether this matrix is equal to the passed matrix
according to the specified tolerance. |
|
IsInverse(Matrix3d)
|
Checks whether the passed matrix is inverse. |
|
IsInverse(Matrix3d,
Tolerance)
|
Checks whether the passed matrix is inverse according to the
specified tolerance. |
|
IsScaledOrtho
|
Checks whether the column vectors of the linear part of this
matrix are perpendicular to each other. |
|
IsScaledOrtho(Tolerance)
|
Checks whether the column vectors of the linear part of this
matrix are perpendicular to each other according to the specified
tolerance. |
|
IsSingular
|
Checks whether this matrix is singular. |
|
IsSingular(Tolerance)
|
Checks whether this matrix is singular according to the
specified tolerance. |
|
IsUniscaledOrtho
|
Checks whether the column vectors of the linear part of this
matrix are of equal length and perpendicular to each other. |
|
IsUniscaledOrtho(Tolerance)
|
Checks whether the column vectors of the linear part of this
matrix are of equal length and perpendicular to each other
according to the specified tolerance. |

|
Mirroring(Line3d)
|
Returns the matrix that mirrors about the specified line. |

|
Mirroring(Plane)
|
Returns the matrix that mirrors about the specified plane. |

|
Mirroring(Point3d)
|
Returns the matrix that mirrors about the specified point. |

|
PlaneToWorld(Plane)
|
Returns the matrix that maps the plane coordinate system to the
world coordinate syste (WCS). |

|
PlaneToWorld(Vector3d)
|
Returns the matrix that maps the plane coordinate system to the
world coordinate system (WCS). |
|
PostMultiplyBy
|
Sets this matrix to the product of (this matrix) * rightSide
and returns the resulting matrix. |
|
PreMultiplyBy
|
Sets this matrix to the product of leftSide * (this matrix) and
returns the resulting matrix. |

|
Projection
|
Returns the matrix that parallel projects onto the specified
plane in the specified direction. |

|
Rotation
|
Returns the matrix that rotates by angle about the axis passing
through the center. |

|
Scaling
|
Returns the matrix that scales by a scale factor about the
center. |
|
ToArray
|
Returns an array that contains matrix elements. Matrix elements
are assigned by rows (data11, data12 ... data44). The resulting
array contains 16 elements. |
|
ToString
|
Returns a string representation of this matrix.
(Overrides ValueTypeToString) |
|
ToString(IFormatProvider)
|
Returns an equivalent string representation of this
object. |
|
ToString(String,
IFormatProvider)
|
Returns an equivalent string representation of this
object. |
|
Transpose
|
Returns the transpose of this matrix. |

|
WorldToPlane(Plane)
|
Returns the matrix that maps the world coordinate system (WCS)
to the plane coordinate system. |

|
WorldToPlane(Vector3d)
|
Returns the matrix that maps the world coordinate system (WCS)
to the plane coordinate system. |
Top
Operators
Remarks
Matrix3d may be
viewed as an array[4][4] of doubles. A Matrix3d, M, can be
expressed as a 4 by 4 matrix, in the form
a00 a01 a02 t0
a10 a11 a12 t1
a20 a21 a22 t2
0 0 0 1
The linear part of M is the matrix
a00 a01 a02
a10 a11 a12
a20 a21 a22
The translational part of M is the column
t0
t1
t2
The origin of the coordinate system of M is (t0, t1, t2).
See Also