gstlearn  1.0.0
CCC
Rotation Class Reference

TODO : public ASpaceObject. More...

#include <Rotation.hpp>

Inheritance diagram for Rotation:
AStringable

Public Member Functions

 Rotation (unsigned int ndim=2)
 
 Rotation (const Rotation &r)
 
Rotationoperator= (const Rotation &r)
 
virtual ~Rotation ()
 
unsigned int getNDim () const
 
bool isRotated () const
 
const MatrixSquareGeneralgetMatrixDirect () const
 
const MatrixSquareGeneralgetMatrixInverse () const
 
const VectorDoublegetAngles () const
 
double getAngle (int idim) const
 
void resetFromSpaceDimension (unsigned int ndim)
 
virtual String toString (const AStringFormat *strfmt=nullptr) const override
 
int setMatrixDirect (const MatrixSquareGeneral &rotmat)
 
int setMatrixDirectByVector (const VectorDouble &rotmat)
 
int setAngles (const VectorDouble &angles)
 
void setIdentity ()
 
void rotateDirect (const VectorDouble &inv, VectorDouble &outv) const
 
void rotateInverse (const VectorDouble &inv, VectorDouble &outv) const
 
bool isIdentity () const
 
bool isSame (const Rotation &rot) const
 
VectorDouble getMatrixDirectByVector () const
 
VectorDouble getMatrixInverseByVector () const
 
- Public Member Functions inherited from AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (int level) const final
 

Private Member Functions

void _recopy (const Rotation &r)
 
void _checkRotForIdentity ()
 
void _directToInverse ()
 
void _inverseToDirect ()
 

Private Attributes

unsigned int _nDim
 
bool _flagRot
 
VectorDouble _angles
 
MatrixSquareGeneral _rotMat
 
MatrixSquareGeneral _rotInv
 

Detailed Description

TODO : public ASpaceObject.

Constructor & Destructor Documentation

◆ Rotation() [1/2]

Rotation::Rotation ( unsigned int  ndim = 2)

◆ Rotation() [2/2]

Rotation::Rotation ( const Rotation r)

◆ ~Rotation()

Rotation::~Rotation ( )
virtual

Member Function Documentation

◆ _checkRotForIdentity()

void Rotation::_checkRotForIdentity ( )
private

◆ _directToInverse()

void Rotation::_directToInverse ( )
private

◆ _inverseToDirect()

void Rotation::_inverseToDirect ( )
private

◆ _recopy()

void Rotation::_recopy ( const Rotation r)
private

◆ getAngle()

double Rotation::getAngle ( int  idim) const
inline

◆ getAngles()

const VectorDouble& Rotation::getAngles ( ) const
inline

◆ getMatrixDirect()

const MatrixSquareGeneral& Rotation::getMatrixDirect ( ) const
inline

◆ getMatrixDirectByVector()

VectorDouble Rotation::getMatrixDirectByVector ( ) const
inline

◆ getMatrixInverse()

const MatrixSquareGeneral& Rotation::getMatrixInverse ( ) const
inline

◆ getMatrixInverseByVector()

VectorDouble Rotation::getMatrixInverseByVector ( ) const
inline

◆ getNDim()

unsigned int Rotation::getNDim ( ) const
inline

◆ isIdentity()

bool Rotation::isIdentity ( ) const
inline

◆ isRotated()

bool Rotation::isRotated ( ) const
inline

◆ isSame()

bool Rotation::isSame ( const Rotation rot) const

◆ operator=()

Rotation & Rotation::operator= ( const Rotation r)

◆ resetFromSpaceDimension()

void Rotation::resetFromSpaceDimension ( unsigned int  ndim)

◆ rotateDirect()

void Rotation::rotateDirect ( const VectorDouble inv,
VectorDouble outv 
) const

◆ rotateInverse()

void Rotation::rotateInverse ( const VectorDouble inv,
VectorDouble outv 
) const

◆ setAngles()

int Rotation::setAngles ( const VectorDouble angles)

◆ setIdentity()

void Rotation::setIdentity ( )

◆ setMatrixDirect()

int Rotation::setMatrixDirect ( const MatrixSquareGeneral rotmat)

◆ setMatrixDirectByVector()

int Rotation::setMatrixDirectByVector ( const VectorDouble rotmat)

◆ toString()

String Rotation::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

Reimplemented from AStringable.

Member Data Documentation

◆ _angles

VectorDouble Rotation::_angles
private

◆ _flagRot

bool Rotation::_flagRot
private

◆ _nDim

unsigned int Rotation::_nDim
private

◆ _rotInv

MatrixSquareGeneral Rotation::_rotInv
private

◆ _rotMat

MatrixSquareGeneral Rotation::_rotMat
private

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