Base class for broad phase continuous collision. It helps to accelerate the continuous collision/distance between N objects. Also support self collision, self distance and collision/distance with another M objects.
More...
|
| BroadPhaseContinuousCollisionManager () |
|
virtual | ~BroadPhaseContinuousCollisionManager () |
|
virtual void | registerObjects (const std::vector< ContinuousCollisionObject * > &other_objs) |
| add objects to the manager
|
|
virtual void | registerObject (ContinuousCollisionObject *obj)=0 |
| add one object to the manager
|
|
virtual void | unregisterObject (ContinuousCollisionObject *obj)=0 |
| remove one object from the manager
|
|
virtual void | setup ()=0 |
| initialize the manager, related with the specific type of manager
|
|
virtual void | update ()=0 |
| update the condition of manager
|
|
virtual void | update (ContinuousCollisionObject *updated_obj) |
| update the manager by explicitly given the object updated
|
|
virtual void | update (const std::vector< ContinuousCollisionObject * > &updated_objs) |
| update the manager by explicitly given the set of objects update
|
|
virtual void | clear ()=0 |
| clear the manager
|
|
virtual void | getObjects (std::vector< ContinuousCollisionObject * > &objs) const =0 |
| return the objects managed by the manager
|
|
virtual void | collide (ContinuousCollisionObject *obj, CollisionCallBackBase *callback) const =0 |
| perform collision test between one object and all the objects belonging to the manager
|
|
virtual void | distance (ContinuousCollisionObject *obj, DistanceCallBackBase *callback) const =0 |
| perform distance computation between one object and all the objects belonging to the manager
|
|
virtual void | collide (CollisionCallBackBase *callback) const =0 |
| perform collision test for the objects belonging to the manager (i.e., N^2 self collision)
|
|
virtual void | distance (DistanceCallBackBase *callback) const =0 |
| perform distance test for the objects belonging to the manager (i.e., N^2 self distance)
|
|
virtual void | collide (BroadPhaseContinuousCollisionManager *other_manager, CollisionCallBackBase *callback) const =0 |
| perform collision test with objects belonging to another manager
|
|
virtual void | distance (BroadPhaseContinuousCollisionManager *other_manager, DistanceCallBackBase *callback) const =0 |
| perform distance test with objects belonging to another manager
|
|
virtual bool | empty () const =0 |
| whether the manager is empty
|
|
virtual size_t | size () const =0 |
| the number of objects managed by the manager
|
|
template<typename S>
class coal::BroadPhaseContinuousCollisionManager< S >
Base class for broad phase continuous collision. It helps to accelerate the continuous collision/distance between N objects. Also support self collision, self distance and collision/distance with another M objects.