The HullLibrary class can create a convex hull from a collection of vertices, using the ComputeHull method. More...
#include <btConvexHull.h>
Public Member Functions | |
HullError | CreateConvexHull (const HullDesc &desc, HullResult &result) |
HullError | ReleaseResult (HullResult &result) |
Public Attributes | |
btAlignedObjectArray< int > | m_vertexIndexMapping |
Private Member Functions | |
bool | ComputeHull (unsigned int vcount, const btVector3 *vertices, PHullResult &result, unsigned int vlimit) |
class btHullTriangle * | allocateTriangle (int a, int b, int c) |
void | deAllocateTriangle (btHullTriangle *) |
void | b2bfix (btHullTriangle *s, btHullTriangle *t) |
void | removeb2b (btHullTriangle *s, btHullTriangle *t) |
void | checkit (btHullTriangle *t) |
btHullTriangle * | extrudable (btScalar epsilon) |
int | calchull (btVector3 *verts, int verts_count, TUIntArray &tris_out, int &tris_count, int vlimit) |
int | calchullgen (btVector3 *verts, int verts_count, int vlimit) |
int4 | FindSimplex (btVector3 *verts, int verts_count, btAlignedObjectArray< int > &allow) |
class ConvexH * | ConvexHCrop (ConvexH &convex, const btPlane &slice) |
void | extrude (class btHullTriangle *t0, int v) |
ConvexH * | test_cube () |
void | BringOutYourDead (const btVector3 *verts, unsigned int vcount, btVector3 *overts, unsigned int &ocount, unsigned int *indices, unsigned indexcount) |
bool | CleanupVertices (unsigned int svcount, const btVector3 *svertices, unsigned int stride, unsigned int &vcount, btVector3 *vertices, btScalar normalepsilon, btVector3 &scale) |
Private Attributes | |
btAlignedObjectArray< class btHullTriangle * > | m_tris |
The HullLibrary class can create a convex hull from a collection of vertices, using the ComputeHull method.
The btShapeHull class uses this HullLibrary to create a approximate convex mesh given a general (non-polyhedral) convex shape.
Definition at line 184 of file btConvexHull.h.
btHullTriangle * HullLibrary::allocateTriangle | ( | int | a, | |
int | b, | |||
int | c | |||
) | [private] |
Definition at line 423 of file btConvexHull.cpp.
void HullLibrary::b2bfix | ( | btHullTriangle * | s, | |
btHullTriangle * | t | |||
) | [private] |
Definition at line 375 of file btConvexHull.cpp.
void HullLibrary::BringOutYourDead | ( | const btVector3 * | verts, | |
unsigned int | vcount, | |||
btVector3 * | overts, | |||
unsigned int & | ocount, | |||
unsigned int * | indices, | |||
unsigned | indexcount | |||
) | [private] |
Definition at line 1114 of file btConvexHull.cpp.
int HullLibrary::calchull | ( | btVector3 * | verts, | |
int | verts_count, | |||
TUIntArray & | tris_out, | |||
int & | tris_count, | |||
int | vlimit | |||
) | [private] |
Definition at line 618 of file btConvexHull.cpp.
int HullLibrary::calchullgen | ( | btVector3 * | verts, | |
int | verts_count, | |||
int | vlimit | |||
) | [private] |
Definition at line 518 of file btConvexHull.cpp.
void HullLibrary::checkit | ( | btHullTriangle * | t | ) | [private] |
Definition at line 399 of file btConvexHull.cpp.
bool HullLibrary::CleanupVertices | ( | unsigned int | svcount, | |
const btVector3 * | svertices, | |||
unsigned int | stride, | |||
unsigned int & | vcount, | |||
btVector3 * | vertices, | |||
btScalar | normalepsilon, | |||
btVector3 & | scale | |||
) | [private] |
XXX might be broken
Definition at line 855 of file btConvexHull.cpp.
bool HullLibrary::ComputeHull | ( | unsigned int | vcount, | |
const btVector3 * | vertices, | |||
PHullResult & | result, | |||
unsigned int | vlimit | |||
) | [private] |
Definition at line 650 of file btConvexHull.cpp.
HullError HullLibrary::CreateConvexHull | ( | const HullDesc & | desc, | |
HullResult & | result | |||
) |
Definition at line 691 of file btConvexHull.cpp.
void HullLibrary::deAllocateTriangle | ( | btHullTriangle * | tri | ) | [private] |
Definition at line 433 of file btConvexHull.cpp.
btHullTriangle * HullLibrary::extrudable | ( | btScalar | epsilon | ) | [private] |
Definition at line 465 of file btConvexHull.cpp.
void HullLibrary::extrude | ( | class btHullTriangle * | t0, | |
int | v | |||
) | [private] |
Definition at line 442 of file btConvexHull.cpp.
int4 HullLibrary::FindSimplex | ( | btVector3 * | verts, | |
int | verts_count, | |||
btAlignedObjectArray< int > & | allow | |||
) | [private] |
Definition at line 482 of file btConvexHull.cpp.
HullError HullLibrary::ReleaseResult | ( | HullResult & | result | ) |
Definition at line 816 of file btConvexHull.cpp.
void HullLibrary::removeb2b | ( | btHullTriangle * | s, | |
btHullTriangle * | t | |||
) | [private] |
Definition at line 391 of file btConvexHull.cpp.
ConvexH* HullLibrary::test_cube | ( | ) | [private] |
btAlignedObjectArray<class btHullTriangle*> HullLibrary::m_tris [private] |
Definition at line 187 of file btConvexHull.h.
Definition at line 191 of file btConvexHull.h.