Public Member Functions | |
void | addEdge (const Vector3d< double > &p1, const Vector3d< double > &p2, EdgeVector &edges, VertexLookup split, const double *plane) |
bool | addTri (VertexLookup vl, UintVector &list, const Vector3d< double > &p1, const Vector3d< double > &p2, const Vector3d< double > &p3, EdgeVector &edges, VertexLookup split, const double *plane) |
CHull * | canMerge (CHull *a, CHull *b) |
bool | combineHulls (void) |
ConvexBuilder (ConvexDecompInterface *callback) | |
virtual void | ConvexDebugBound (const double *bmin, const double *bmax, unsigned int color) |
virtual void | ConvexDebugOBB (const double *sides, const double *matrix, unsigned int color) |
virtual void | ConvexDebugPoint (const double *p, double dist, unsigned int color) |
virtual void | ConvexDebugTri (const double *p1, const double *p2, const double *p3, unsigned int color) |
virtual void | ConvexDecompResult (ConvexResult &result) |
void | doConvexDecomposition (unsigned int vcount, const double *vertices, unsigned int tcount, const unsigned int *indices, ConvexDecompInterface *callback, double masterVolume, unsigned int depth) |
bool | extractPolygon (EdgeVector &edges, UintVector &polygon, VertexLookup split) |
int | findEdge (EdgeVector &edges, unsigned int index) const |
int | findFirstUnused (EdgeVector &edges) const |
int | findNearestEdge (EdgeVector &edges, unsigned int index, VertexLookup verts) const |
void | getMesh (const ConvexResult &cr, VertexLookup vc) |
bool | isDuplicate (unsigned int i1, unsigned int i2, unsigned int i3, unsigned int ci1, unsigned int ci2, unsigned int ci3) |
bool | isEdge (const Vector3d< double > &p, const double *plane) |
unsigned int | process (const DecompDesc &desc) |
void | saveEdges (VertexLookup vl, const EdgeVector &edges, bool front) |
void | saveObj (VertexLookup vl, const UintVector &indices, bool front) |
void | sortChulls (CHullVector &hulls) |
~ConvexBuilder (void) | |
Public Attributes | |
ConvexDecompInterface * | mCallback |
CHullVector | mChulls |
Definition at line 194 of file ConvexDecomposition.cpp.
ConvexDecomposition::ConvexBuilder::ConvexBuilder | ( | ConvexDecompInterface * | callback | ) | [inline] |
Definition at line 197 of file ConvexDecomposition.cpp.
ConvexDecomposition::ConvexBuilder::~ConvexBuilder | ( | void | ) | [inline] |
Definition at line 202 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::addEdge | ( | const Vector3d< double > & | p1, |
const Vector3d< double > & | p2, | ||
EdgeVector & | edges, | ||
VertexLookup | split, | ||
const double * | plane | ||
) | [inline] |
Definition at line 490 of file ConvexDecomposition.cpp.
bool ConvexDecomposition::ConvexBuilder::addTri | ( | VertexLookup | vl, |
UintVector & | list, | ||
const Vector3d< double > & | p1, | ||
const Vector3d< double > & | p2, | ||
const Vector3d< double > & | p3, | ||
EdgeVector & | edges, | ||
VertexLookup | split, | ||
const double * | plane | ||
) | [inline] |
Definition at line 521 of file ConvexDecomposition.cpp.
CHull* ConvexDecomposition::ConvexBuilder::canMerge | ( | CHull * | a, |
CHull * | b | ||
) | [inline] |
Definition at line 249 of file ConvexDecomposition.cpp.
bool ConvexDecomposition::ConvexBuilder::combineHulls | ( | void | ) | [inline] |
Definition at line 305 of file ConvexDecomposition.cpp.
virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugBound | ( | const double * | bmin, |
const double * | bmax, | ||
unsigned int | color | ||
) | [inline, virtual] |
Reimplemented from ConvexDecomposition::ConvexDecompInterface.
Definition at line 457 of file ConvexDecomposition.cpp.
virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugOBB | ( | const double * | sides, |
const double * | matrix, | ||
unsigned int | color | ||
) | [inline, virtual] |
Reimplemented from ConvexDecomposition::ConvexDecompInterface.
Definition at line 448 of file ConvexDecomposition.cpp.
virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugPoint | ( | const double * | p, |
double | dist, | ||
unsigned int | color | ||
) | [inline, virtual] |
Reimplemented from ConvexDecomposition::ConvexDecompInterface.
Definition at line 452 of file ConvexDecomposition.cpp.
virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugTri | ( | const double * | p1, |
const double * | p2, | ||
const double * | p3, | ||
unsigned int | color | ||
) | [inline, virtual] |
Reimplemented from ConvexDecomposition::ConvexDecompInterface.
Definition at line 443 of file ConvexDecomposition.cpp.
virtual void ConvexDecomposition::ConvexBuilder::ConvexDecompResult | ( | ConvexResult & | result | ) | [inline, virtual] |
Implements ConvexDecomposition::ConvexDecompInterface.
Definition at line 462 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::doConvexDecomposition | ( | unsigned int | vcount, |
const double * | vertices, | ||
unsigned int | tcount, | ||
const unsigned int * | indices, | ||
ConvexDecompInterface * | callback, | ||
double | masterVolume, | ||
unsigned int | depth | ||
) | [inline] |
Definition at line 625 of file ConvexDecomposition.cpp.
bool ConvexDecomposition::ConvexBuilder::extractPolygon | ( | EdgeVector & | edges, |
UintVector & | polygon, | ||
VertexLookup | split | ||
) | [inline] |
Definition at line 1005 of file ConvexDecomposition.cpp.
int ConvexDecomposition::ConvexBuilder::findEdge | ( | EdgeVector & | edges, |
unsigned int | index | ||
) | const [inline] |
Definition at line 942 of file ConvexDecomposition.cpp.
int ConvexDecomposition::ConvexBuilder::findFirstUnused | ( | EdgeVector & | edges | ) | const [inline] |
Definition at line 916 of file ConvexDecomposition.cpp.
int ConvexDecomposition::ConvexBuilder::findNearestEdge | ( | EdgeVector & | edges, |
unsigned int | index, | ||
VertexLookup | verts | ||
) | const [inline] |
Definition at line 965 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::getMesh | ( | const ConvexResult & | cr, |
VertexLookup | vc | ||
) | [inline] |
Definition at line 227 of file ConvexDecomposition.cpp.
bool ConvexDecomposition::ConvexBuilder::isDuplicate | ( | unsigned int | i1, |
unsigned int | i2, | ||
unsigned int | i3, | ||
unsigned int | ci1, | ||
unsigned int | ci2, | ||
unsigned int | ci3 | ||
) | [inline] |
Definition at line 212 of file ConvexDecomposition.cpp.
bool ConvexDecomposition::ConvexBuilder::isEdge | ( | const Vector3d< double > & | p, |
const double * | plane | ||
) | [inline] |
Definition at line 475 of file ConvexDecomposition.cpp.
unsigned int ConvexDecomposition::ConvexBuilder::process | ( | const DecompDesc & | desc | ) | [inline] |
Definition at line 378 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::saveEdges | ( | VertexLookup | vl, |
const EdgeVector & | edges, | ||
bool | front | ||
) | [inline] |
Definition at line 554 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::saveObj | ( | VertexLookup | vl, |
const UintVector & | indices, | ||
bool | front | ||
) | [inline] |
Definition at line 589 of file ConvexDecomposition.cpp.
void ConvexDecomposition::ConvexBuilder::sortChulls | ( | CHullVector & | hulls | ) | [inline] |
Definition at line 468 of file ConvexDecomposition.cpp.
Definition at line 1045 of file ConvexDecomposition.cpp.
Definition at line 1044 of file ConvexDecomposition.cpp.