#include <boundingvolumes.h>

Public Member Functions | |
| OBBTree3d () | |
| ~OBBTree3d () | |
| void | setBox (OBB3d *box) |
| void | setChild (OBBTree3d *child) |
| void | setSibling (OBBTree3d *sibling) |
| void | copy (OBBTree3d *other) |
| void | rotateZ (float cos, float sin, int istart=0) |
| void | translate (float *t) |
| OBBTree3d * | getSibling () |
| OBBTree3d * | getChild () |
| OBB3d * | getBox () |
| void | transform_forwards (float cos_psi, float sin_psi, float dx, float dy, float dz) |
| bool | isCollisionFree (OBBTree3d *other_root) |
| bool | isCollisionFree (OBB3d *other) |
Private Member Functions | |
| void | initSibling (OBBTree3d *other) |
| void | initChild (OBBTree3d *other) |
| void | initBox (float *values) |
Private Attributes | |
| OBBTree3d * | sibling |
| OBBTree3d * | child |
| OBB3d * | box |
| bool | sibling_valid |
| bool | child_valid |
| bool | box_valid |
A tree structure consisting of OBB3d bounding volumes, which over-approximates a target shape. The highest level OBB3d contains the complete target shape. Lower levels of the tree represent subsets overapproximate subsets of the target shape.
|
inline |
empty constructor

|
inline |
destructor
|
inline |
copy the tree


|
inline |
returns the bounding volume of this
|
inline |
returns the first child of this

|
inline |
returns the next node on the same level as this

|
inlineprivate |


|
inlineprivate |


|
inlineprivate |


|
inline |
|
inline |
test for collisions between this OBBTree3d and (sub)tree represented by other_root


|
inline |
rotate this bounding volume and all bounding volumes in subtree around z


|
inline |
set bounding volume of this object
|
inline |
set child subtree
|
inline |
set sibling subtree
|
inline |
rotate and translate bounding volumes of this and of complete subtree


|
inline |
translate this bounding volume and all bounding volumes in subtree


|
private |
overapproximation of target shape at this level
|
private |
determines existance of box. allows to supress collision tests at higher levels by setting to false
|
private |
the first child of this. other children of this are siblings of child
|
private |
determines existance of child
|
private |
a node on the same level as this
|
private |
determines existance of sibling