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

#include <CollisionDetector.h>

Inheritance diagram for cnoid::CollisionDetector:
cnoid::Referenced cnoid::AISTCollisionDetector

Public Types

typedef intptr_t GeometryHandle
 

Public Member Functions

virtual ~CollisionDetector ()
 
virtual const char * name () const =0
 
virtual CollisionDetectorclone () const =0
 
virtual void clearGeometries ()=0
 
virtual int numGeometries () const =0
 
virtual stdx::optional< GeometryHandleaddGeometry (SgNode *geometry)=0
 
virtual void setCustomObject (GeometryHandle geometry, Referenced *object)=0
 
virtual void setGeometryStatic (GeometryHandle geometry, bool isStatic=true)=0
 
virtual void ignoreGeometryPair (GeometryHandle geometry1, GeometryHandle geometry2, bool ignore=true)=0
 
virtual bool makeReady ()=0
 
virtual void updatePosition (GeometryHandle geometry, const Isometry3 &position)=0
 
virtual void updatePositions (std::function< void(Referenced *object, Isometry3 *&out_position)> positionQuery)=0
 
virtual void detectCollisions (std::function< void(const CollisionPair &collisionPair)> callback)=0
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 

Static Public Member Functions

static bool registerFactory (const std::string &name, std::function< CollisionDetector *()> factory)
 
static int numFactories ()
 
static std::string factoryName (int factoryIndex)
 
static int factoryIndex (const std::string &name)
 
static CollisionDetectorcreate (int factoryIndex)
 

Additional Inherited Members

- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &)
 
int refCount () const
 

Member Typedef Documentation

◆ GeometryHandle

Constructor & Destructor Documentation

◆ ~CollisionDetector()

CollisionDetector::~CollisionDetector ( )
virtual

Member Function Documentation

◆ addGeometry()

virtual stdx::optional<GeometryHandle> cnoid::CollisionDetector::addGeometry ( SgNode geometry)
pure virtual
Returns
A handle of the geometry in the collision detector

Implemented in cnoid::AISTCollisionDetector.

◆ clearGeometries()

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

◆ clone()

virtual CollisionDetector* 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::AISTCollisionDetector.

◆ create()

CollisionDetector * CollisionDetector::create ( int  factoryIndex)
static

◆ detectCollisions()

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

◆ factoryIndex()

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

◆ factoryName()

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

◆ ignoreGeometryPair()

virtual void cnoid::CollisionDetector::ignoreGeometryPair ( GeometryHandle  geometry1,
GeometryHandle  geometry2,
bool  ignore = true 
)
pure virtual

◆ 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,
std::function< CollisionDetector *()>  factory 
)
static

◆ setCustomObject()

virtual void cnoid::CollisionDetector::setCustomObject ( GeometryHandle  geometry,
Referenced object 
)
pure virtual

◆ setGeometryStatic()

virtual void cnoid::CollisionDetector::setGeometryStatic ( GeometryHandle  geometry,
bool  isStatic = true 
)
pure virtual

◆ updatePosition()

virtual void cnoid::CollisionDetector::updatePosition ( GeometryHandle  geometry,
const Isometry3 position 
)
pure virtual

◆ updatePositions()

virtual void cnoid::CollisionDetector::updatePositions ( std::function< void(Referenced *object, Isometry3 *&out_position)>  positionQuery)
pure virtual

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