Class NaiveCollisionManager

Inheritance Relationships

Base Type

Class Documentation

class NaiveCollisionManager : public coal::BroadPhaseCollisionManager

Brute force N-body collision manager.

Public Types

typedef BroadPhaseCollisionManager Base

Public Functions

NaiveCollisionManager()
virtual void registerObjects(const std::vector<CollisionObject*> &other_objs)

add objects to the manager

virtual void registerObject(CollisionObject *obj)

add one object to the manager

virtual void unregisterObject(CollisionObject *obj)

remove one object from the manager

virtual void setup()

initialize the manager, related with the specific type of manager

virtual void update()

update the condition of manager

virtual void clear()

clear the manager

virtual void getObjects(std::vector<CollisionObject*> &objs) const

return the objects managed by the manager

virtual void collide(CollisionObject *obj, CollisionCallBackBase *callback) const

perform collision test between one object and all the objects belonging to the manager

virtual void distance(CollisionObject *obj, DistanceCallBackBase *callback) const

perform distance computation between one object and all the objects belonging to the manager

virtual void collide(CollisionCallBackBase *callback) const

perform collision test for the objects belonging to the manager (i.e., N^2 self collision)

virtual void distance(DistanceCallBackBase *callback) const

perform distance test for the objects belonging to the manager (i.e., N^2 self distance)

virtual void collide(BroadPhaseCollisionManager *other_manager, CollisionCallBackBase *callback) const

perform collision test with objects belonging to another manager

virtual void distance(BroadPhaseCollisionManager *other_manager, DistanceCallBackBase *callback) const

perform distance test with objects belonging to another manager

virtual bool empty() const

whether the manager is empty

virtual size_t size() const

the number of objects managed by the manager

virtual void getObjects(std::vector<CollisionObject*> &objs) const = 0

return the objects managed by the manager

inline virtual std::vector<CollisionObject*> getObjects() const

return the objects managed by the manager

Protected Attributes

std::list<CollisionObject*> objs

objects belonging to the manager are stored in a list structure