Simbody  3.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Rotation.h File Reference

Go to the source code of this file.

Classes

class  SimTK::Rotation_< P >
 The Rotation class is a Mat33 that guarantees that the matrix is a legitimate 3x3 array associated with the relative orientation of two right-handed, orthogonal, unit vector bases. More...
 
class  SimTK::InverseRotation_< P >
 ----------------------------------------------------------------------------- This InverseRotation class is the inverse of a Rotation See the Rotation class for information. More...
 
class  SimTK::Rotation_< P >
 The Rotation class is a Mat33 that guarantees that the matrix is a legitimate 3x3 array associated with the relative orientation of two right-handed, orthogonal, unit vector bases. More...
 
class  SimTK::InverseRotation_< P >
 ----------------------------------------------------------------------------- This InverseRotation class is the inverse of a Rotation See the Rotation class for information. More...
 

Namespaces

 SimTK
 This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols.
 

Typedefs

typedef Rotation_< Real > SimTK::Rotation
 
typedef Rotation_< float > SimTK::fRotation
 
typedef Rotation_< double > SimTK::dRotation
 
typedef InverseRotation_< Real > SimTK::InverseRotation
 
typedef InverseRotation_< float > SimTK::fInverseRotation
 
typedef InverseRotation_< double > SimTK::dInverseRotation
 

Enumerations

enum  SimTK::BodyOrSpaceType {
  SimTK::BodyRotationSequence =0,
  SimTK::SpaceRotationSequence =1
}
 

Functions

template<class P >
std::ostream & SimTK::operator<< (std::ostream &, const Rotation_< P > &)
 Write a Rotation matrix to an output stream by writing out its underlying Mat33. More...
 
template<class P >
std::ostream & SimTK::operator<< (std::ostream &, const InverseRotation_< P > &)
 Write an InverseRotation matrix to an output stream by writing out its underlying Mat33. More...
 
template<class P , int S>
UnitVec< P, 1 > SimTK::operator* (const Rotation_< P > &R, const UnitVec< P, S > &v)
 Rotating a unit vector leaves it unit length, saving us from having to perform an expensive normalization. More...
 
template<class P , int S>
UnitRow< P, 1 > SimTK::operator* (const UnitRow< P, S > &r, const Rotation_< P > &R)
 Rotating a unit vector leaves it unit length, saving us from having to perform an expensive normalization. More...
 
template<class P , int S>
UnitVec< P, 1 > SimTK::operator* (const InverseRotation_< P > &R, const UnitVec< P, S > &v)
 Rotating a unit vector leaves it unit length, saving us from having to perform an expensive normalization. More...
 
template<class P , int S>
UnitRow< P, 1 > SimTK::operator* (const UnitRow< P, S > &r, const InverseRotation_< P > &R)
 Rotating a unit vector leaves it unit length, saving us from having to perform an expensive normalization. More...
 
template<class P >
Rotation_< P > SimTK::operator* (const Rotation_< P > &R1, const Rotation_< P > &R2)
 Composition of Rotation matrices via operator*. More...
 
template<class P >
Rotation_< P > SimTK::operator* (const Rotation_< P > &R1, const InverseRotation_< P > &R2)
 Composition of Rotation matrices via operator*. More...
 
template<class P >
Rotation_< P > SimTK::operator* (const InverseRotation_< P > &R1, const Rotation_< P > &R2)
 Composition of Rotation matrices via operator*. More...
 
template<class P >
Rotation_< P > SimTK::operator* (const InverseRotation_< P > &R1, const InverseRotation_< P > &R2)
 Composition of Rotation matrices via operator*. More...
 
template<class P >
Rotation_< P > SimTK::operator/ (const Rotation_< P > &R1, const Rotation_< P > &R2)
 Composition of a Rotation matrix and the inverse of another Rotation via operator/, that is R1/R2 == R1*(~R2). More...
 
template<class P >
Rotation_< P > SimTK::operator/ (const Rotation_< P > &R1, const InverseRotation &R2)
 Composition of a Rotation matrix and the inverse of another Rotation via operator/, that is R1/R2 == R1*(~R2). More...
 
template<class P >
Rotation_< P > SimTK::operator/ (const InverseRotation_< P > &R1, const Rotation_< P > &R2)
 Composition of a Rotation matrix and the inverse of another Rotation via operator/, that is R1/R2 == R1*(~R2). More...
 
template<class P >
Rotation_< P > SimTK::operator/ (const InverseRotation_< P > &R1, const InverseRotation_< P > &R2)
 Composition of a Rotation matrix and the inverse of another Rotation via operator/, that is R1/R2 == R1*(~R2). More...