Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

base::Transform Class Reference

Collaboration diagram for base::Transform:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Transform ()
 Transform (const Vector3 &translation)
 Transform (const Orient &rotation)
 Transform (const Quat4 &rotation)
 Transform (const Matrix3 &rotation)
 Transform (const Vector3 &translation, const Orient &rotation)
 Transform (const Vector3 &translation, const Quat4 &rotation)
 Transform (const Vector3 &translation, const Matrix3 &rotation)
 Transform (const Matrix4 &t)
 Transform (const Transform &tr)
 ~Transform ()
Transform & operator= (const Transform &t)
bool operator== (const Transform &rhs) const
bool equals (const Transform &rhs, Real epsilon=consts::epsilon) const throw ()
Matrix4 getTransform () const
void setIdentity ()
void setToRotation (const Vector3 &axis, Real angle)
void setToRotation (const Quat4 &orient)
void setRotationComponent (const Vector3 &axis, Real angle)
void setRotationComponent (const Quat4 &orient)
void setRotationComponent (const Orient &orient)
void setRotationComponent (const Matrix3 &rotation)
void setToTranslation (const Vector3 &trans)
void setTranslationComponent (const Vector3 &trans)
void setTransform (const Matrix4 &m)
const Vector3getTranslation () const
const OrientgetRotation () const
bool identity () const
bool isTransRotationOnly () const
bool containsRotation () const
bool containsTranslation () const
Transform & invert ()
 inverse transformation

void transformPoint (Point3 &p) const
void transformPoint (Point4 &p) const
Point3 transform (const Point3 &p) const
Point4 transform (const Point4 &p) const
Point3 rotate (const Point3 &p) const
Point3 translate (const Point3 &p) const
Point3 operator() (const Point3 &p) const
Transform & operator *= (const Transform &rhs)

Protected Attributes

bool isIdentity
 identity transform

bool isPureTranslationRotation
 is not an arbitrary transform in t

bool hasTranslation
 transform includes translation in trans (if not arbitrary)

bool hasRotation
 transform includes rotation in axis & angle (if not arbitrary)

Orient orient
Vector3 trans
Matrix4 t

Constructor & Destructor Documentation

base::Transform::Transform  )  [inline]
 

Definition at line 45 of file Transform.

References isIdentity.

base::Transform::Transform const Vector3 translation  )  [explicit]
 

base::Transform::Transform const Orient rotation  ) 
 

base::Transform::Transform const Quat4 rotation  ) 
 

base::Transform::Transform const Matrix3 rotation  ) 
 

base::Transform::Transform const Vector3 translation,
const Orient rotation
 

base::Transform::Transform const Vector3 translation,
const Quat4 rotation
 

base::Transform::Transform const Vector3 translation,
const Matrix3 rotation
 

base::Transform::Transform const Matrix4 t  ) 
 

base::Transform::Transform const Transform &  tr  ) 
 

base::Transform::~Transform  )  [inline]
 

Definition at line 55 of file Transform.


Member Function Documentation

bool base::Transform::containsRotation  )  const [inline]
 

Definition at line 147 of file Transform.

References hasRotation, isIdentity, and isPureTranslationRotation.

bool base::Transform::containsTranslation  )  const [inline]
 

Definition at line 152 of file Transform.

References hasTranslation, isIdentity, and isPureTranslationRotation.

bool base::Transform::equals const Transform &  rhs,
Real  epsilon = consts::epsilon
const throw ()
 

const Orient & base::Transform::getRotation  )  const [inline]
 

Definition at line 126 of file Transform.

References hasRotation, isIdentity, isPureTranslationRotation, orient, base::Orient::setFromRotationComponent(), base::Orient::setIdentity(), and t.

Referenced by base::operator<<(), and physics::PositionableOrientable::setConfiguration().

Matrix4 base::Transform::getTransform  )  const
 

Referenced by base::operator<<().

const Vector3 & base::Transform::getTranslation  )  const [inline]
 

Definition at line 115 of file Transform.

References base::Matrix4::e(), hasTranslation, isIdentity, isPureTranslationRotation, base::Vector3::setZero(), t, and trans.

Referenced by base::operator<<(), and physics::PositionableOrientable::setConfiguration().

bool base::Transform::identity  )  const [inline]
 

Definition at line 137 of file Transform.

References isIdentity.

Referenced by base::operator<<().

Transform& base::Transform::invert  ) 
 

inverse transformation

bool base::Transform::isTransRotationOnly  )  const [inline]
 

Definition at line 142 of file Transform.

References isIdentity, and isPureTranslationRotation.

Referenced by base::operator<<().

Transform& base::Transform::operator *= const Transform &  rhs  ) 
 

Point3 base::Transform::operator() const Point3 p  )  const [inline]
 

Definition at line 94 of file Transform.

References base::Point3, and transform().

Transform& base::Transform::operator= const Transform &  t  ) 
 

bool base::Transform::operator== const Transform &  rhs  )  const
 

Point3 base::Transform::rotate const Point3 p  )  const
 

void base::Transform::setIdentity  )  [inline]
 

Definition at line 65 of file Transform.

References isIdentity.

void base::Transform::setRotationComponent const Matrix3 rotation  ) 
 

void base::Transform::setRotationComponent const Orient orient  ) 
 

void base::Transform::setRotationComponent const Quat4 orient  ) 
 

void base::Transform::setRotationComponent const Vector3 axis,
Real  angle
 

void base::Transform::setToRotation const Quat4 orient  ) 
 

void base::Transform::setToRotation const Vector3 axis,
Real  angle
 

void base::Transform::setToTranslation const Vector3 trans  ) 
 

void base::Transform::setTransform const Matrix4 m  ) 
 

void base::Transform::setTranslationComponent const Vector3 trans  ) 
 

Point4 base::Transform::transform const Point4 p  )  const [inline]
 

Definition at line 164 of file Transform.

References base::Point4, and transformPoint().

Point3 base::Transform::transform const Point3 p  )  const [inline]
 

Definition at line 159 of file Transform.

References base::Point3, and transformPoint().

Referenced by physics::DynamicSpatial::getRelPointPos(), and operator()().

void base::Transform::transformPoint Point4 p  )  const
 

void base::Transform::transformPoint Point3 p  )  const
 

Referenced by transform().

Point3 base::Transform::translate const Point3 p  )  const
 


Member Data Documentation

bool base::Transform::hasRotation [protected]
 

transform includes rotation in axis & angle (if not arbitrary)

Definition at line 104 of file Transform.

Referenced by containsRotation(), and getRotation().

bool base::Transform::hasTranslation [protected]
 

transform includes translation in trans (if not arbitrary)

Definition at line 103 of file Transform.

Referenced by containsTranslation(), and getTranslation().

bool base::Transform::isIdentity [protected]
 

identity transform

Definition at line 101 of file Transform.

Referenced by containsRotation(), containsTranslation(), getRotation(), getTranslation(), identity(), isTransRotationOnly(), setIdentity(), and Transform().

bool base::Transform::isPureTranslationRotation [protected]
 

is not an arbitrary transform in t

Definition at line 102 of file Transform.

Referenced by containsRotation(), containsTranslation(), getRotation(), getTranslation(), and isTransRotationOnly().

Orient base::Transform::orient [mutable, protected]
 

Definition at line 106 of file Transform.

Referenced by getRotation().

Matrix4 base::Transform::t [protected]
 

Definition at line 108 of file Transform.

Referenced by getRotation(), and getTranslation().

Vector3 base::Transform::trans [mutable, protected]
 

Definition at line 107 of file Transform.

Referenced by getTranslation().


The documentation for this class was generated from the following file:
Generated on Thu Jul 29 16:39:27 2004 for OpenSim by doxygen 1.3.6