CVB.Net 15.0
AffineMatrix3D Struct Reference

Affine transformation for 3D containing a transformation matrix and a translation vector. More...

Inherits IEquatable< AffineMatrix3D >.

Public Member Functions

 AffineMatrix3D (Matrix3D matrix, Point3Dd translation)
 Constructor. More...
 
override bool Equals (object obj)
 Indicates whether this instance and the given obj are equal. More...
 
bool Equals (AffineMatrix3D t2)
 Gets whether this and the other t2 object are equal. More...
 
override int GetHashCode ()
 Returns the hash code for this instance. More...
 
override string ToString ()
 String conversion. More...
 
void Invert ()
 Invert this affine transformation in-place if possible. More...
 
AffineMatrix3D Inverse ()
 Gets the inverse of this affine transformation if possible. More...
 

Static Public Member Functions

static AffineMatrix3D operator* (AffineMatrix3D lhs, AffineMatrix3D rhs)
 Compose two affine matrices by multiplying them. More...
 

Properties

static AffineMatrix3D Identity [get]
 The identity element.
 
Point3Dd Translation [get, set]
 The translation part of the transformation.
 
Matrix3D Matrix [get, set]
 The matrix part of the transformation.
 
double this[int row, int column] [get, set]
 Index access. More...
 

Detailed Description

Affine transformation for 3D containing a transformation matrix and a translation vector.

No perspective transformation is possible, only translation, rotation, scaling and shear.

Constructor & Destructor Documentation

◆ AffineMatrix3D()

AffineMatrix3D ( Matrix3D  matrix,
Point3Dd  translation 
)

Constructor.

Parameters
matrixMatrix to use.
translationTranslation to use.

Member Function Documentation

◆ Equals() [1/2]

bool Equals ( AffineMatrix3D  t2)

Gets whether this and the other t2 object are equal.

Parameters
t2Object to compre to.
Returns
true if t2 and this instance represent the same value; otherwise false.

◆ Equals() [2/2]

override bool Equals ( object  obj)

Indicates whether this instance and the given obj are equal.

Parameters
objObject to compare to.
Returns
true if obj and this instance are the same type and represent the same value; otherwise false.

◆ GetHashCode()

override int GetHashCode ( )

Returns the hash code for this instance.

Returns
A 32-bit signed integer that is the hash code for this instance.

◆ Inverse()

AffineMatrix3D Inverse ( )

Gets the inverse of this affine transformation if possible.

Returns
Inverse.
Exceptions
DivideByZeroExceptionIf the matrix cannot be inverted.

◆ Invert()

void Invert ( )

Invert this affine transformation in-place if possible.

Exceptions
DivideByZeroExceptionIf the matrix cannot be inverted.

◆ operator*()

static AffineMatrix3D operator* ( AffineMatrix3D  lhs,
AffineMatrix3D  rhs 
)
static

Compose two affine matrices by multiplying them.

Parameters
lhsleft hand side operand
rhsright hand side operand
Returns
composed AffineMatrix struct

◆ ToString()

override string ToString ( )

String conversion.

Returns
string representation of this affine matrix

Property Documentation

◆ this[int row, int column]

double this[int row, int column]
getset

Index access.

Parameters
rowThe row, or "Y" index to get.
columnThe column, or "X" index to get.
Returns
Value at the specified position.