Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CMatrix4x4 Class Reference

#include <CMatrix4x4.hpp>

Collaboration diagram for CMatrix4x4:
[legend]

Public Member Functions

 CMatrix4x4 ()
 
 CMatrix4x4 (const CMatrix4x4 &matrix)
 
 CMatrix4x4 (const double matrix[16])
 
 CMatrix4x4 (const double matrix[4][4])
 
 CMatrix4x4 (const float matrix[16])
 
 CMatrix4x4 (const SValues &values)
 
 ~CMatrix4x4 ()
 
CMatrix4x4operator= (const CMatrix4x4 &other)
 
CMatrix4x4operator= (CMatrix4x4 &&other) noexcept
 
bool operator== (const CMatrix4x4 &b) const
 
void appendTranslation (double tx, double ty, double tz)
 
void appendScale (double sx, double sy, double sz)
 
CMatrix4x4 multiplication (const CMatrix4x4 &matrix) const
 
std::vector< iv::math::geometry::Point3dtransformationPoints2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points) const
 
void transformationPoints2DInSitu (std::vector< iv::math::geometry::Point2d > &points) const
 
void transformationPoints3DInSitu (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &points) const
 
std::shared_ptr< std::vector< iv::math::geometry::Point3d > > transformationPoints3D (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &points) const
 
float * transformationPoints3DArrayC (const float *vertex, uint64_t numPoints) const
 
template<typename T >
std::vector< iv::math::geometry::Point3dtransformationPoints3DArrayC (const std::vector< iv::math::geometry::Point3d > &vertex) const
 
void transformationPoint3D (double x, double y, double z, double *xTrans, double *yTrans, double *zTrans) const
 
void transformationUnitVector (double Ux, double Uy, double Uz, double *UxTrans, double *UyTrans, double *UzTrans) const
 
void transformationVector (double Ux, double Uy, double Uz, double *UxTrans, double *UyTrans, double *UzTrans) const
 
void transformationDistance (double distanceX, double distanceY, double *distanceXTrans, double *distanceYTrans) const
 
void transformationDistanceX (double distance, double *distanceTrans) const
 
void transformationDistanceY (double distance, double *distanceTrans) const
 
CMatrix4x4 inverse () const
 
void getMatrix (double valuesMatrix[4][4]) const
 
bool isIdentity () const
 

Static Public Member Functions

static CMatrix4x4 createIdentity ()
 
static CMatrix4x4 createTranslation (double tx, double ty, double tz)
 
static CMatrix4x4 createScale (double sx, double sy, double sz)
 
static CMatrix4x4 createAxis (double Ux, double Uy, double Uz, double Vx, double Vy, double Vz)
 
static CMatrix4x4 createExtrusion (double Nx, double Ny, double Nz)
 
static CMatrix4x4 createRotate (double angleRotate, double Ux, double Uy, double Uz)
 

Private Attributes

union { 
 
   SMatrix   m_matrix 
 
   SValues   m_values 
 
};  
 

Constructor & Destructor Documentation

◆ CMatrix4x4() [1/6]

CMatrix4x4::CMatrix4x4 ( )

◆ CMatrix4x4() [2/6]

CMatrix4x4::CMatrix4x4 ( const CMatrix4x4 & matrix)

◆ CMatrix4x4() [3/6]

CMatrix4x4::CMatrix4x4 ( const double matrix[16])
explicit

◆ CMatrix4x4() [4/6]

CMatrix4x4::CMatrix4x4 ( const double matrix[4][4])
explicit

◆ CMatrix4x4() [5/6]

CMatrix4x4::CMatrix4x4 ( const float matrix[16])
explicit

◆ CMatrix4x4() [6/6]

CMatrix4x4::CMatrix4x4 ( const SValues & values)
explicit

◆ ~CMatrix4x4()

CMatrix4x4::~CMatrix4x4 ( )
default

Member Function Documentation

◆ appendScale()

void CMatrix4x4::appendScale ( double sx,
double sy,
double sz )

◆ appendTranslation()

void CMatrix4x4::appendTranslation ( double tx,
double ty,
double tz )

◆ createAxis()

CMatrix4x4 CMatrix4x4::createAxis ( double Ux,
double Uy,
double Uz,
double Vx,
double Vy,
double Vz )
static

◆ createExtrusion()

CMatrix4x4 CMatrix4x4::createExtrusion ( double Nx,
double Ny,
double Nz )
static

◆ createIdentity()

CMatrix4x4 CMatrix4x4::createIdentity ( )
static

◆ createRotate()

CMatrix4x4 CMatrix4x4::createRotate ( double angleRotate,
double Ux,
double Uy,
double Uz )
static

◆ createScale()

CMatrix4x4 CMatrix4x4::createScale ( double sx,
double sy,
double sz )
static

◆ createTranslation()

CMatrix4x4 CMatrix4x4::createTranslation ( double tx,
double ty,
double tz )
static

◆ getMatrix()

void CMatrix4x4::getMatrix ( double valuesMatrix[4][4]) const

◆ inverse()

CMatrix4x4 CMatrix4x4::inverse ( ) const
nodiscard

◆ isIdentity()

bool CMatrix4x4::isIdentity ( ) const
nodiscard

◆ multiplication()

CMatrix4x4 CMatrix4x4::multiplication ( const CMatrix4x4 & matrix) const
nodiscard

◆ operator=() [1/2]

CMatrix4x4 & CMatrix4x4::operator= ( CMatrix4x4 && other)
noexcept

◆ operator=() [2/2]

CMatrix4x4 & CMatrix4x4::operator= ( const CMatrix4x4 & other)

◆ operator==()

bool CMatrix4x4::operator== ( const CMatrix4x4 & b) const

◆ transformationDistance()

void CMatrix4x4::transformationDistance ( double distanceX,
double distanceY,
double * distanceXTrans,
double * distanceYTrans ) const

◆ transformationDistanceX()

void CMatrix4x4::transformationDistanceX ( double distance,
double * distanceTrans ) const

◆ transformationDistanceY()

void CMatrix4x4::transformationDistanceY ( double distance,
double * distanceTrans ) const

◆ transformationPoint3D()

void CMatrix4x4::transformationPoint3D ( double x,
double y,
double z,
double * xTrans,
double * yTrans,
double * zTrans ) const

◆ transformationPoints2D()

std::vector< iv::math::geometry::Point3d > CMatrix4x4::transformationPoints2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points) const
nodiscard

◆ transformationPoints2DInSitu()

void CMatrix4x4::transformationPoints2DInSitu ( std::vector< iv::math::geometry::Point2d > & points) const

◆ transformationPoints3D()

std::shared_ptr< std::vector< iv::math::geometry::Point3d > > CMatrix4x4::transformationPoints3D ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & points) const

◆ transformationPoints3DArrayC() [1/2]

float * CMatrix4x4::transformationPoints3DArrayC ( const float * vertex,
uint64_t numPoints ) const

◆ transformationPoints3DArrayC() [2/2]

template<typename T >
std::vector< iv::math::geometry::Point3d > CMatrix4x4::transformationPoints3DArrayC ( const std::vector< iv::math::geometry::Point3d > & vertex) const
inlinenodiscard

◆ transformationPoints3DInSitu()

void CMatrix4x4::transformationPoints3DInSitu ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & points) const

◆ transformationUnitVector()

void CMatrix4x4::transformationUnitVector ( double Ux,
double Uy,
double Uz,
double * UxTrans,
double * UyTrans,
double * UzTrans ) const

◆ transformationVector()

void CMatrix4x4::transformationVector ( double Ux,
double Uy,
double Uz,
double * UxTrans,
double * UyTrans,
double * UzTrans ) const

Member Data Documentation

◆ [union]

union { ... } CMatrix4x4

◆ m_matrix

SMatrix CMatrix4x4::m_matrix

◆ m_values

SValues CMatrix4x4::m_values

The documentation for this class was generated from the following files: