#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