btAlignedObjectArray< unsigned int > TUIntArray
includes modifications/improvements by John Ratcliff, see BringOutYourDead below.
const T & btMax(const T &a, const T &b)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
HalfEdge(short _ea, unsigned char _v, unsigned char _p)
btAlignedObjectArray< HalfEdge > edges
btAlignedObjectArray< btPlane > facets
btAlignedObjectArray< btVector3 > vertices
HullDesc(HullFlag flag, unsigned int vcount, const btVector3 *vertices, unsigned int stride=sizeof(btVector3))
bool HasHullFlag(HullFlag flag) const
void ClearHullFlag(HullFlag flag)
unsigned int mMaxVertices
const btVector3 * mVertices
unsigned int mVertexStride
void SetHullFlag(HullFlag flag)
The HullLibrary class can create a convex hull from a collection of vertices, using the ComputeHull m...
btHullTriangle * extrudable(btScalar epsilon)
class btHullTriangle * allocateTriangle(int a, int b, int c)
bool ComputeHull(unsigned int vcount, const btVector3 *vertices, PHullResult &result, unsigned int vlimit)
HullError ReleaseResult(HullResult &result)
void BringOutYourDead(const btVector3 *verts, unsigned int vcount, btVector3 *overts, unsigned int &ocount, unsigned int *indices, unsigned indexcount)
HullError CreateConvexHull(const HullDesc &desc, HullResult &result)
void deAllocateTriangle(btHullTriangle *)
int calchull(btVector3 *verts, int verts_count, TUIntArray &tris_out, int &tris_count, int vlimit)
btAlignedObjectArray< int > m_vertexIndexMapping
void b2bfix(btHullTriangle *s, btHullTriangle *t)
void removeb2b(btHullTriangle *s, btHullTriangle *t)
btAlignedObjectArray< class btHullTriangle * > m_tris
class ConvexH * ConvexHCrop(ConvexH &convex, const btPlane &slice)
void checkit(btHullTriangle *t)
void extrude(class btHullTriangle *t0, int v)
int calchullgen(btVector3 *verts, int verts_count, int vlimit)
int4 FindSimplex(btVector3 *verts, int verts_count, btAlignedObjectArray< int > &allow)
bool CleanupVertices(unsigned int svcount, const btVector3 *svertices, unsigned int stride, unsigned int &vcount, btVector3 *vertices, btScalar normalepsilon, btVector3 &scale)
btAlignedObjectArray< btVector3 > m_OutputVertices
btAlignedObjectArray< unsigned int > m_Indices
unsigned int mNumOutputVertices
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
btPlane(const btVector3 &n, btScalar d)
btVector3 can be used to represent 3D points and vectors.
int4(int _x, int _y, int _z, int _w)
const int & operator[](int i) const