Description
This .Net class wraps AcGeMatrix3d ObjectARX class.
Class Matrix3d represents an affine transformation of 3D space, including translation. Each matrix M has the form:
a00 a01 a02 t0 a10 a11 a12 t1 a20 a21 a22 t2 0 0 0 1
where the matrix A:
a00 a01 a02
a10 a11 a12
a20 a21 a22
is called the linear part of M.
Column T:
t0
t1
t2
is called a translational part of M.
To get Point3dpoint transformed by corresponding transformation one has to take the product M x P of the matrix M and point-column P = ( pnt.x, pnt.y, pnt.z, 1.0 ) to the power of T . To get Vector3dvector transformed by corresponding transformation one has to take the product M x V of the matrix M and vector-column V = (vec.x, vec.y, vec.z, 0.0) to the power of T.
Every matrix M is associated with a coordinate system. This coordinate system has the origin (t0, t1) and vectors (a00, a10) and (a01, a11) as axes. Matrix M maps the standard coordinate system to the coordinate system with the origin (0, 0, 0) and axes (1, 0, 0), (0, 1, 0), and (0, 0, 1).
C#
public struct Matrix3d : IFormattable { }
Visual Basic
Public Structure Matrix3d Inherits IFormattable End Structure