cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
vctEulerRotation3< _order > Class Template Reference

#include <vctEulerRotation3.h>

Inheritance diagram for vctEulerRotation3< _order >:
vctEulerRotation3Base

Public Member Functions

 vctEulerRotation3 ()
 
 vctEulerRotation3 (const ThisType &other)
 
 vctEulerRotation3 (double phi, double theta, double psi)
 
 vctEulerRotation3 (double *angles)
 
 vctEulerRotation3 (const vct3 &angles)
 
template<class __containerType >
 vctEulerRotation3 (const vctMatrixRotation3Base< __containerType > &matrixRotation) throw (std::runtime_error)
 
template<class __containerType >
 vctEulerRotation3 (const vctMatrixRotation3Base< __containerType > &matrixRotation, bool normalizeInput)
 
 ~vctEulerRotation3 ()
 
template<class _matrixType >
ThisTypeFrom (const vctMatrixRotation3Base< _matrixType > &matrixRot) throw (std::runtime_error)
 
template<class _matrixType >
ThisTypeFromNormalized (const vctMatrixRotation3Base< _matrixType > &matrixRot)
 
template<class _matrixType >
ThisTypeFromRaw (const vctMatrixRotation3Base< _matrixType > &matrixRotation)
 
vct3 GetAngles (void) const
 
vct3 GetAnglesInDegrees (void) const
 
ThisTypeInverseOf (const ThisType &otherRotation)
 
ThisType Inverse (void) const
 
ThisTypeNormalizedOf (const ThisType &otherRotation)
 
ThisType Normalized (void) const
 
bool AlmostEqual (const ThisType &other, double tolerance=TypeTraits::Tolerance()) const
 
bool AlmostEquivalent (const ThisType &other, double tolerance=TypeTraits::Tolerance()) const
 
std::string ToString (void) const
 
void ToStream (std::ostream &outputStream) const
 
void ToStreamRaw (std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const
 
void SerializeRaw (std::ostream &outputStream) const
 
void DeSerializeRaw (std::istream &inputStream)
 
bool Equal (const ThisType &other) const
 
bool operator== (const ThisType &other) const
 
- Public Member Functions inherited from vctEulerRotation3Base
 vctEulerRotation3Base (void)
 
 vctEulerRotation3Base (const vctEulerRotation3Base &other)
 
 vctEulerRotation3Base (double phi, double theta, double psi)
 
 vctEulerRotation3Base (double *angles)
 
 vctEulerRotation3Base (const vct3 &angles)
 
 ~vctEulerRotation3Base ()
 
double phi (void) const
 
double theta (void) const
 
double psi (void) const
 
double alpha (void) const
 
double beta (void) const
 
double gamma (void) const
 
void Assign (double phi, double theta, double psi)
 
vctEulerRotation3BaseInverseSelf (void)
 
vctEulerRotation3BaseNormalizedSelf (void)
 
bool IsNormalized (double tolerance=TypeTraits::Tolerance()) const
 

Additional Inherited Members

- Protected Types inherited from vctEulerRotation3Base
typedef cmnTypeTraits< double > TypeTraits
 
- Protected Member Functions inherited from vctEulerRotation3Base
void ThrowUnlessIsNormalized (void) const throw (std::runtime_error)
 
template<class _inputType >
void ThrowUnlessIsNormalized (const _inputType &input) const throw (std::runtime_error)
 
- Protected Attributes inherited from vctEulerRotation3Base
vct3 Angles
 

Constructor & Destructor Documentation

template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::vctEulerRotation3 ( )
inline
template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::vctEulerRotation3 ( const ThisType other)
inline
template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::vctEulerRotation3 ( double  phi,
double  theta,
double  psi 
)
inline
template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::vctEulerRotation3 ( double *  angles)
inline
template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::vctEulerRotation3 ( const vct3 angles)
inline
template<vctEulerRotation3Order::OrderType _order>
template<class __containerType >
vctEulerRotation3< _order >::vctEulerRotation3 ( const vctMatrixRotation3Base< __containerType > &  matrixRotation)
throw (std::runtime_error
)
inline

Constructor from a vctMatrixRotation3.

template<vctEulerRotation3Order::OrderType _order>
template<class __containerType >
vctEulerRotation3< _order >::vctEulerRotation3 ( const vctMatrixRotation3Base< __containerType > &  matrixRotation,
bool  normalizeInput 
)
inline

Constructor from a vctMatrixRotation3.

template<vctEulerRotation3Order::OrderType _order>
vctEulerRotation3< _order >::~vctEulerRotation3 ( )
inline

Member Function Documentation

template<vctEulerRotation3Order::OrderType _order>
bool vctEulerRotation3< _order >::AlmostEqual ( const ThisType other,
double  tolerance = TypeTraits::Tolerance() 
) const
inline

Return true if this rotation is effectively equal to the other rotation, up to the given tolerance. Rotations may be effectively equal if one is elementwise equal to the other.

The tolerance factor is used to compare each of the elements of the difference vector.

See Also
AlmostEquivalent
template<vctEulerRotation3Order::OrderType _order>
bool vctEulerRotation3< _order >::AlmostEquivalent ( const ThisType other,
double  tolerance = TypeTraits::Tolerance() 
) const
inline

Return true if this rotation is effectively equavilent to the other rotation, up to the given tolerance.

The tolerance factor is used to compare each of the elements of the difference vector.

See Also
AlmostEqual
template<vctEulerRotation3Order::OrderType _order>
void vctEulerRotation3< _order >::DeSerializeRaw ( std::istream &  inputStream)
inline

Binary deserialization

template<vctEulerRotation3Order::OrderType _order>
bool vctEulerRotation3< _order >::Equal ( const ThisType other) const
inline

Return true if this rotation is exactly equal to the other rotation, without any tolerance error. Rotations may be effectively equal if one is elementwise equal to the other.

See Also
AlmostEqual
template<vctEulerRotation3Order::OrderType _order>
template<class _matrixType >
ThisType& vctEulerRotation3< _order >::From ( const vctMatrixRotation3Base< _matrixType > &  matrixRot)
throw (std::runtime_error
)
inline

Conversion from a vctMatrixRotation3.

template<vctEulerRotation3Order::OrderType _order>
template<class _matrixType >
ThisType& vctEulerRotation3< _order >::FromNormalized ( const vctMatrixRotation3Base< _matrixType > &  matrixRot)
inline

Conversion from a vctMatrixRotation3.

template<vctEulerRotation3Order::OrderType _order>
template<class _matrixType >
ThisType& vctEulerRotation3< _order >::FromRaw ( const vctMatrixRotation3Base< _matrixType > &  matrixRotation)
inline

Conversion from a vctMatrixRotation3.

template<vctEulerRotation3Order::OrderType _order>
vct3 vctEulerRotation3< _order >::GetAngles ( void  ) const
inline

Returns the Euler angles in radians

template<vctEulerRotation3Order::OrderType _order>
vct3 vctEulerRotation3< _order >::GetAnglesInDegrees ( void  ) const
inline

Returns the Euler angles in degrees

template<vctEulerRotation3Order::OrderType _order>
ThisType vctEulerRotation3< _order >::Inverse ( void  ) const
inline

Create and return by copy the inverse of this rotation.

template<vctEulerRotation3Order::OrderType _order>
ThisType& vctEulerRotation3< _order >::InverseOf ( const ThisType otherRotation)
inline

Set this rotation as the inverse of another one. See also InverseSelf().

template<vctEulerRotation3Order::OrderType _order>
ThisType vctEulerRotation3< _order >::Normalized ( void  ) const
inline

Returns the normalized version of this rotation. This method returns a copy of the normalized rotation and does not modify this rotation. See also NormalizedSelf().

template<vctEulerRotation3Order::OrderType _order>
ThisType& vctEulerRotation3< _order >::NormalizedOf ( const ThisType otherRotation)
inline

Sets this rotation as the normalized version of another one.

Parameters
otherRotationEuler rotation used to compute the normalized rotation.
template<vctEulerRotation3Order::OrderType _order>
bool vctEulerRotation3< _order >::operator== ( const ThisType other) const
inline
template<vctEulerRotation3Order::OrderType _order>
void vctEulerRotation3< _order >::SerializeRaw ( std::ostream &  outputStream) const
inline

Binary serialization

template<vctEulerRotation3Order::OrderType _order>
void vctEulerRotation3< _order >::ToStream ( std::ostream &  outputStream) const
inline

Print the Euler rotation in a human readable format

template<vctEulerRotation3Order::OrderType _order>
void vctEulerRotation3< _order >::ToStreamRaw ( std::ostream &  outputStream,
const char  delimiter = ' ',
bool  headerOnly = false,
const std::string &  headerPrefix = "" 
) const
inline

Print in machine processable format

template<vctEulerRotation3Order::OrderType _order>
std::string vctEulerRotation3< _order >::ToString ( void  ) const
inline

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