#include <mbd_sweep_and_prune.h>
List of all members.
Detailed Description
template<typename types>
class OpenTissue::mbd::SweepNPrune< types >
The Sweep N' Prune Broad Phase Collision Detection Algorithm.
Member Typedef Documentation
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
Constructor & Destructor Documentation
template<typename types >
Member Function Documentation
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
template<typename types >
Consistency Test Method. This method should be used for debugging purpose only. It runs through all the endpoints in the list and determines if the list is sorted correctly.
- Parameters:
-
| axis | Coordinate Axis to be tested. |
- Returns:
- If the list is consistent then the return value is true otherwise it is false.
template<typename types >
Wrongly Sorted Query Method. This method determines whatever the two end points appears in the proper order along a coordinate axe.
It is invoked by the method "sort(...)".
- Parameters:
-
| left | A pointer to the endpoint that has the left position in the list (head is assumed to be left most and tail rightmost). |
| right | A pointer to the endpoint that has the right position in the list. |
- Returns:
- If left and right should be swapped then the return value it true otherwise it is false.
template<typename types >
template<typename types >
Run SweepNPrune Algorithm.
- Parameters:
-
| edges | A pointer to a list which upon return contains all the detected overlaps, as pointers to the respective contact graph edges. |
template<typename types >
Coordinate Sorting Algorithm. Temporal Coherence indicates that insertion sort is cabaple of sorting the endpoints from the previous iteration in expected linear time.
This method encapsylates the inertion sort algorithm.
- Parameters:
-
| axis | Coordinate Axis that should be sorted upon return. |
template<typename types >
Swap Action. This method is supposed to be called by the insetion sort algorithm whenever it swaps two endpoints.
NOTE: The method is called before the actual swap!!!
The method is assumed to perform all the appropriate semantic actions, corresponding to the swap.
The method is invoked by the method "sort(...)".
- Parameters:
-
| left | A pointer to the endpoint that has the left position in the list (head is assumed to be left most and tail rightmost). |
| right | A pointer to the endpoint that has the right position in the list. |
Member Data Documentation
template<typename types >
X-Axe. The x-coordinates of AABB interval endpoints.
template<typename types >
Y-Axe. The y-coordinates of AABB interval endpoints.
template<typename types >
Z-Axe. The z-coordinates of AABB interval endpoints.
template<typename types >
A pointer to the configuration that holds the configuration that the broad phase collision detection algorithm is intended to work on.
template<typename types >
A list containing the currently reported overlaps.
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_sweep_and_prune.h