Matrix3d Structure

This class represents 3D transformation matrices that define affine (translation, rotation, and/or scaling ) transformations.
Inheritance Hierarchy
SystemObject
  SystemValueType
    Teigha.GeometryMatrix3d

Namespace: Teigha.Geometry
Assembly: TD_Mgd (in TD_Mgd.dll) Version: 24.2.0.0
Syntax
public struct Matrix3d : IFormattable

The Matrix3d type exposes the following members.

Constructors
  Name Description
Public method Matrix3d Constructor for the Matrix3d class. Creates a matrix with elements taken from the passed array.
Top
Properties
  Name Description
Public property CoordinateSystem3d  
Public property ElementAt Property that represents an element of this matrix at the specified row and column indices.
Public propertyStatic member Identity  
Public property Normal  
Public property Translation  
Top
Methods
  Name Description
Public methodStatic member 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.
Public methodStatic member Displacement Returns the displacement (translation) matrix by the specified vector.
Public method Equals Checks objects for equality.
(Overrides ValueTypeEquals(Object))
Public method GetDeterminant Returns the determinant of this matrix.
Public method GetHashCode Retrieves the object hash code.
(Overrides ValueTypeGetHashCode)
Public method 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.
Public method GetType Gets the Type of the current instance.
(Inherited from Object)
Public method Inverse Returns the inverse of this matrix.
Public method IsEqualTo(Matrix3d) Checks whether this matrix is equal to the passed matrix.
Public method IsEqualTo(Matrix3d, Tolerance) Checks whether this matrix is equal to the passed matrix according to the specified tolerance.
Public method IsInverse(Matrix3d) Checks whether the passed matrix is inverse.
Public method IsInverse(Matrix3d, Tolerance) Checks whether the passed matrix is inverse according to the specified tolerance.
Public method IsScaledOrtho Checks whether the column vectors of the linear part of this matrix are perpendicular to each other.
Public method IsScaledOrtho(Tolerance) Checks whether the column vectors of the linear part of this matrix are perpendicular to each other according to the specified tolerance.
Public method IsSingular Checks whether this matrix is singular.
Public method IsSingular(Tolerance) Checks whether this matrix is singular according to the specified tolerance.
Public method IsUniscaledOrtho Checks whether the column vectors of the linear part of this matrix are of equal length and perpendicular to each other.
Public method 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.
Public methodStatic member Mirroring(Line3d) Returns the matrix that mirrors about the specified line.
Public methodStatic member Mirroring(Plane) Returns the matrix that mirrors about the specified plane.
Public methodStatic member Mirroring(Point3d) Returns the matrix that mirrors about the specified point.
Public methodStatic member PlaneToWorld(Plane) Returns the matrix that maps the plane coordinate system to the world coordinate syste (WCS).
Public methodStatic member PlaneToWorld(Vector3d) Returns the matrix that maps the plane coordinate system to the world coordinate system (WCS).
Public method PostMultiplyBy Sets this matrix to the product of (this matrix) * rightSide and returns the resulting matrix.
Public method PreMultiplyBy Sets this matrix to the product of leftSide * (this matrix) and returns the resulting matrix.
Public methodStatic member Projection Returns the matrix that parallel projects onto the specified plane in the specified direction.
Public methodStatic member Rotation Returns the matrix that rotates by angle about the axis passing through the center.
Public methodStatic member Scaling Returns the matrix that scales by a scale factor about the center.
Public method ToArray Returns an array that contains matrix elements. Matrix elements are assigned by rows (data11, data12 ... data44). The resulting array contains 16 elements.
Public method ToString Returns a string representation of this matrix.
(Overrides ValueTypeToString)
Public method ToString(IFormatProvider) Returns an equivalent string representation of this object.
Public method ToString(String, IFormatProvider) Returns an equivalent string representation of this object.
Public method Transpose Returns the transpose of this matrix.
Public methodStatic member WorldToPlane(Plane) Returns the matrix that maps the world coordinate system (WCS) to the plane coordinate system.
Public methodStatic member WorldToPlane(Vector3d) Returns the matrix that maps the world coordinate system (WCS) to the plane coordinate system.
Top
Operators
  Name Description
Public operatorStatic member Equality(Matrix3d, Matrix3d) Equality operator for the Matrix3d structure. Checks whether matrix elements are equal.
Public operatorStatic member Inequality(Matrix3d, Matrix3d) Inequality operator for the Matrix3d structure. Checks whether matrix elements are not equal.
Public operatorStatic member Multiply(Matrix3d, Matrix3d) Multiplication operator for the Matrix2d structure. Multiplies left matrix by right matrix (a*b).
Top
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

©  Bricsys NV. All rights reserved.