Choreonoid  1.5
Public Member Functions | Static Public Member Functions | List of all members
cnoid::CollisionDetector Class Referenceabstract

#include <CollisionDetector.h>

Inheritance diagram for cnoid::CollisionDetector:
cnoid::AISTCollisionDetector cnoid::BulletCollisionDetector cnoid::ODECollisionDetector

Public Member Functions

virtual ~CollisionDetector ()
 
virtual const char * name () const =0
 
virtual CollisionDetectorPtr clone () const =0
 
virtual bool enableGeometryCache (bool on)=0
 
virtual void clearGeometryCache (SgNodePtr geometry)=0
 
virtual void clearAllGeometryCaches ()=0
 
virtual void clearGeometries ()=0
 
virtual int numGeometries () const =0
 
virtual int addGeometry (SgNodePtr geometry)=0
 
virtual void setGeometryStatic (int geometryId, bool isStatic=true)=0
 
virtual void setNonInterfarenceGeometyrPair (int geometryId1, int geometryId2)=0
 
virtual bool makeReady ()=0
 
virtual void updatePosition (int geometryId, const Position &position)=0
 
virtual void detectCollisions (boost::function< void(const CollisionPair &)> callback)=0
 

Static Public Member Functions

static bool registerFactory (const std::string &name, boost::function< CollisionDetectorPtr()> factory)
 
static int numFactories ()
 
static std::string factoryName (int factoryIndex)
 
static int factoryIndex (const std::string &name)
 
static CollisionDetectorPtr create (int factoryIndex)
 

Constructor & Destructor Documentation

CollisionDetector::~CollisionDetector ( )
virtual

Member Function Documentation

virtual int cnoid::CollisionDetector::addGeometry ( SgNodePtr  geometry)
pure virtual
virtual void cnoid::CollisionDetector::clearAllGeometryCaches ( )
pure virtual
virtual void cnoid::CollisionDetector::clearGeometries ( )
pure virtual
virtual void cnoid::CollisionDetector::clearGeometryCache ( SgNodePtr  geometry)
pure virtual
virtual CollisionDetectorPtr cnoid::CollisionDetector::clone ( ) const
pure virtual
Note
The geometries and the non interfarence pairs of them are not copied to the clone object. That is same as the state after calling clearGeometries();

Implemented in cnoid::ODECollisionDetector, cnoid::AISTCollisionDetector, and cnoid::BulletCollisionDetector.

CollisionDetectorPtr CollisionDetector::create ( int  factoryIndex)
static
virtual void cnoid::CollisionDetector::detectCollisions ( boost::function< void(const CollisionPair &)>  callback)
pure virtual
virtual bool cnoid::CollisionDetector::enableGeometryCache ( bool  on)
pure virtual
int CollisionDetector::factoryIndex ( const std::string &  name)
static
std::string CollisionDetector::factoryName ( int  factoryIndex)
static
virtual bool cnoid::CollisionDetector::makeReady ( )
pure virtual
virtual const char* cnoid::CollisionDetector::name ( ) const
pure virtual
int CollisionDetector::numFactories ( )
static
virtual int cnoid::CollisionDetector::numGeometries ( ) const
pure virtual
bool CollisionDetector::registerFactory ( const std::string &  name,
boost::function< CollisionDetectorPtr()>  factory 
)
static
virtual void cnoid::CollisionDetector::setGeometryStatic ( int  geometryId,
bool  isStatic = true 
)
pure virtual
virtual void cnoid::CollisionDetector::setNonInterfarenceGeometyrPair ( int  geometryId1,
int  geometryId2 
)
pure virtual
virtual void cnoid::CollisionDetector::updatePosition ( int  geometryId,
const Position position 
)
pure virtual

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