#include <mbd_geometry_dispatcher.h>
List of all members.
Detailed Description
template<typename mbd_types>
class OpenTissue::mbd::GeometryDispatcher< mbd_types >
Geometry Dispatcher. This class should be used as a narrow phase collision detection module in a collision ddetection engine. This class merely tries to figure out what kind of geometries a pair of bodies have and then call the appropriate collision detection algorithm for the specific pair of geometries.
The idea is to setup a table of pointers to so-called collider functions. The geometry types of the objects are then used to lookup the collider that should be invoked. This way the pairing of geometry types takes constant time, regardless of how many geometry types one have.
Member Typedef Documentation
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
Constructor & Destructor Documentation
template<typename mbd_types>
Member Function Documentation
template<typename mbd_types>
template<typename mbd_types>
template<class T1 , class T2 >
This method binds a collision handler to the geometry dispatcher.
- Parameters:
-
| f | The collision handler function. The first two arguments must be ``geometry types'' the third argument must be a collision info and the return value must be bool. |
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
template<typename mbd_types>
Run Narrow Phase Collision Detection Algorithm
- Parameters:
-
| edge | A pointer to an edge represeting the body pair that should be proceesed. |
- Returns:
- If a penetration was detected the return value is true otherwise it is false.
Member Data Documentation
template<typename mbd_types>
A pointer to the configuration.
template<typename mbd_types>
The documentation for this class was generated from the following file:
- /home/hauberg/Dokumenter/Capture/humim-tracker-0.1/src/OpenTissue/OpenTissue/dynamics/mbd/collision_detection/mbd_geometry_dispatcher.h