#include <boundingvolumes.h>
Public Member Functions | |
PlaneSequence3d () | |
PlaneSequence3d (float *p, float *n, int k) | |
void | initialize (float *p, float *n, int k) |
~PlaneSequence3d () | |
bool | isCollisionFree (OBB3d *other) |
bool | isCollisionFree (OBBTree3d *other) |
OBB3d * | getOBB () |
float * | getData () |
int | size () |
Private Member Functions | |
bool | isCollisionFree_detailedTest (OBB3d *other) |
void | generatePlaneData (float *p, float *n) |
void | generateBoundingVolume (float *p, float *n) |
Private Attributes | |
float | v [Nmax *3 *3] |
int | N |
OBB3d | box |
A sequence of 2d planes in 3d space, which can be used to represent constraints
|
inline |
p\in R^{3xk} - point sequence n\in R^{3xk} - normals sticking out of point sequence to define faces
|
inline |
constructor, initialize with an array of corner points p and an array of surface normals n
|
inline |
|
inlineprivate |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
test for collisions with an OBB3d
|
inline |
|
inlineprivate |
|
inline |
|
private |
oriented box, which bounds the complete sequence of planes
|
private |
number of initialized planes
|
private |
an array [ c,e0,e1, c,e0,e1, c,e0,e1] containing corner point and edges of planes 0..N