Hide menu
Loading...
Searching...
No Matches
cadex::Geom::Matrix3d Class Reference

Defines a square matrix of size three. More...

#include <cadex/Geom/Matrix3d.hxx>

Inherits Matrix< 3 >.

Public Member Functions

 Matrix3d ()
 Constructor.
 
 Matrix3d (const MatrixType &theOther)
 Constructor.
 
 Matrix3d (double theA11, double theA12, double theA13, double theA21, double theA22, double theA23, double theA31, double theA32, double theA33)
 Constructor.
 
void SetDiagonal (double theX1, double theX2, double theX3)
 
void SetCross (const ValueVector &theRef)
 Modifies the matrix so that applying it to any triplet produces cross product of the theRef and this triplet.
 
void SetDot (const ValueVector &theRef)
 Modifies the matrix so that applying it to any triplet produces dot product of the theRef and this triplet.
 
bool IsSingular () const
 
double Determinant () const
 
void SetRotation (const Direction &theAxis, double theAng)
 Modifies the matrix so that represents a rotation.
 
void Multiply (double theScalar)
 
void Multiply (const Matrix3d &theOther)
 
void PreMultiply (const Matrix3d &theOther)
 
Matrix3d Multiplied (const Matrix3d &theOther) const
 
Matrix3d Multiplied (double theScalar) const
 
void Invert () override
 
Matrix3d Inverted () const
 
void operator*= (const Matrix3d &theOther)
 

Detailed Description

Defines a square matrix of size three.

Member Function Documentation

◆ SetCross()

void cadex::Geom::Matrix3d::SetCross ( const ValueVector & theRef)

Modifies the matrix so that applying it to any triplet produces cross product of the theRef and this triplet.

Matrix * (X, Y, Z) = theRef.Cross ((X, Y ,Z)).

◆ SetDot()

void cadex::Geom::Matrix3d::SetDot ( const ValueVector & theRef)

Modifies the matrix so that applying it to any triplet produces dot product of the theRef and this triplet.

Matrix * (X, Y, Z) = theRef.Dot ((X, Y ,Z)).