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::~CollisionDetector ( )
virtual

Member Function Documentation

◆ addGeometry()

virtual int cnoid::CollisionDetector::addGeometry ( SgNodePtr  geometry)
pure virtual

◆ clearAllGeometryCaches()

virtual void cnoid::CollisionDetector::clearAllGeometryCaches ( )
pure virtual

◆ clearGeometries()

virtual void cnoid::CollisionDetector::clearGeometries ( )
pure virtual

◆ clearGeometryCache()

virtual void cnoid::CollisionDetector::clearGeometryCache ( SgNodePtr  geometry)
pure virtual

◆ clone()

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.

◆ create()

CollisionDetectorPtr CollisionDetector::create ( int  factoryIndex)
static

◆ detectCollisions()

virtual void cnoid::CollisionDetector::detectCollisions ( boost::function< void(const CollisionPair &)>  callback)
pure virtual

◆ enableGeometryCache()

virtual bool cnoid::CollisionDetector::enableGeometryCache ( bool  on)
pure virtual

◆ factoryIndex()

int CollisionDetector::factoryIndex ( const std::string &  name)
static

◆ factoryName()

std::string CollisionDetector::factoryName ( int  factoryIndex)
static

◆ makeReady()

virtual bool cnoid::CollisionDetector::makeReady ( )
pure virtual

◆ name()

virtual const char* cnoid::CollisionDetector::name ( ) const
pure virtual

◆ numFactories()

int CollisionDetector::numFactories ( )
static

◆ numGeometries()

virtual int cnoid::CollisionDetector::numGeometries ( ) const
pure virtual

◆ registerFactory()

bool CollisionDetector::registerFactory ( const std::string &  name,
boost::function< CollisionDetectorPtr()>  factory 
)
static

◆ setGeometryStatic()

virtual void cnoid::CollisionDetector::setGeometryStatic ( int  geometryId,
bool  isStatic = true 
)
pure virtual

◆ setNonInterfarenceGeometyrPair()

virtual void cnoid::CollisionDetector::setNonInterfarenceGeometyrPair ( int  geometryId1,
int  geometryId2 
)
pure virtual

◆ updatePosition()

virtual void cnoid::CollisionDetector::updatePosition ( int  geometryId,
const Position position 
)
pure virtual

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