Public Member Functions | Protected Attributes | List of all members
fcl::MotionBase Class Referenceabstract

#include <hpp/fcl/ccd/motion_base.h>

Inheritance diagram for fcl::MotionBase:
[legend]

Public Member Functions

 MotionBase ()
 
virtual ~MotionBase ()
 
virtual bool integrate (double dt) const =0
 Integrate the motion from 0 to dt. More...
 
virtual FCL_REAL computeMotionBound (const BVMotionBoundVisitor &mb_visitor) const =0
 Compute the motion bound for a bounding volume, given the closest direction n between two query objects. More...
 
virtual FCL_REAL computeMotionBound (const TriangleMotionBoundVisitor &mb_visitor) const =0
 Compute the motion bound for a triangle, given the closest direction n between two query objects. More...
 
void getCurrentTransform (Matrix3f &R, Vec3f &T) const
 Get the rotation and translation in current step. More...
 
void getCurrentTransform (Quaternion3f &Q, Vec3f &T) const
 
void getCurrentRotation (Matrix3f &R) const
 
void getCurrentRotation (Quaternion3f &Q) const
 
void getCurrentTranslation (Vec3f &T) const
 
virtual void getCurrentTransform (Transform3f &tf) const =0
 
virtual void getTaylorModel (TMatrix3 &tm, TVector3 &tv) const =0
 
const boost::shared_ptr< TimeInterval > & getTimeInterval () const
 

Protected Attributes

boost::shared_ptr< TimeIntervaltime_interval_
 

Constructor & Destructor Documentation

◆ MotionBase()

fcl::MotionBase::MotionBase ( )
inline

◆ ~MotionBase()

virtual fcl::MotionBase::~MotionBase ( )
inlinevirtual

Member Function Documentation

◆ computeMotionBound() [1/2]

virtual FCL_REAL fcl::MotionBase::computeMotionBound ( const BVMotionBoundVisitor mb_visitor) const
pure virtual

◆ computeMotionBound() [2/2]

virtual FCL_REAL fcl::MotionBase::computeMotionBound ( const TriangleMotionBoundVisitor mb_visitor) const
pure virtual

Compute the motion bound for a triangle, given the closest direction n between two query objects.

Implemented in fcl::InterpMotion, fcl::ScrewMotion, fcl::SplineMotion, and fcl::TranslationMotion.

◆ getCurrentRotation() [1/2]

void fcl::MotionBase::getCurrentRotation ( Matrix3f R) const
inline

◆ getCurrentRotation() [2/2]

void fcl::MotionBase::getCurrentRotation ( Quaternion3f Q) const
inline

◆ getCurrentTransform() [1/3]

void fcl::MotionBase::getCurrentTransform ( Matrix3f R,
Vec3f T 
) const
inline

Get the rotation and translation in current step.

References fcl::Transform3f::getRotation(), and fcl::Transform3f::getTranslation().

◆ getCurrentTransform() [2/3]

void fcl::MotionBase::getCurrentTransform ( Quaternion3f Q,
Vec3f T 
) const
inline

◆ getCurrentTransform() [3/3]

virtual void fcl::MotionBase::getCurrentTransform ( Transform3f tf) const
pure virtual

◆ getCurrentTranslation()

void fcl::MotionBase::getCurrentTranslation ( Vec3f T) const
inline

◆ getTaylorModel()

virtual void fcl::MotionBase::getTaylorModel ( TMatrix3 tm,
TVector3 tv 
) const
pure virtual

◆ getTimeInterval()

const boost::shared_ptr<TimeInterval>& fcl::MotionBase::getTimeInterval ( ) const
inline

◆ integrate()

virtual bool fcl::MotionBase::integrate ( double  dt) const
pure virtual

Integrate the motion from 0 to dt.

Implemented in fcl::InterpMotion, fcl::ScrewMotion, fcl::SplineMotion, and fcl::TranslationMotion.

Member Data Documentation

◆ time_interval_

boost::shared_ptr<TimeInterval> fcl::MotionBase::time_interval_
protected