Public Member Functions | Public Attributes | List of all members
ConvexDecomposition::ConvexBuilder Class Reference
Inheritance diagram for ConvexDecomposition::ConvexBuilder:
Inheritance graph
[legend]

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)
 
CHullcanMerge (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

ConvexDecompInterfacemCallback
 
CHullVector mChulls
 

Detailed Description

Definition at line 194 of file ConvexDecomposition.cpp.

Constructor & Destructor Documentation

◆ ConvexBuilder()

ConvexDecomposition::ConvexBuilder::ConvexBuilder ( ConvexDecompInterface callback)
inline

Definition at line 197 of file ConvexDecomposition.cpp.

◆ ~ConvexBuilder()

ConvexDecomposition::ConvexBuilder::~ConvexBuilder ( void  )
inline

Definition at line 202 of file ConvexDecomposition.cpp.

Member Function Documentation

◆ addEdge()

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.

◆ addTri()

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.

◆ canMerge()

CHull* ConvexDecomposition::ConvexBuilder::canMerge ( CHull a,
CHull b 
)
inline

Definition at line 249 of file ConvexDecomposition.cpp.

◆ combineHulls()

bool ConvexDecomposition::ConvexBuilder::combineHulls ( void  )
inline

Definition at line 305 of file ConvexDecomposition.cpp.

◆ ConvexDebugBound()

virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugBound ( const double *  bmin,
const double *  bmax,
unsigned int  color 
)
inlinevirtual

Reimplemented from ConvexDecomposition::ConvexDecompInterface.

Definition at line 457 of file ConvexDecomposition.cpp.

◆ ConvexDebugOBB()

virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugOBB ( const double *  sides,
const double *  matrix,
unsigned int  color 
)
inlinevirtual

Reimplemented from ConvexDecomposition::ConvexDecompInterface.

Definition at line 448 of file ConvexDecomposition.cpp.

◆ ConvexDebugPoint()

virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugPoint ( const double *  p,
double  dist,
unsigned int  color 
)
inlinevirtual

Reimplemented from ConvexDecomposition::ConvexDecompInterface.

Definition at line 452 of file ConvexDecomposition.cpp.

◆ ConvexDebugTri()

virtual void ConvexDecomposition::ConvexBuilder::ConvexDebugTri ( const double *  p1,
const double *  p2,
const double *  p3,
unsigned int  color 
)
inlinevirtual

Reimplemented from ConvexDecomposition::ConvexDecompInterface.

Definition at line 443 of file ConvexDecomposition.cpp.

◆ ConvexDecompResult()

virtual void ConvexDecomposition::ConvexBuilder::ConvexDecompResult ( ConvexResult result)
inlinevirtual

◆ doConvexDecomposition()

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.

◆ extractPolygon()

bool ConvexDecomposition::ConvexBuilder::extractPolygon ( EdgeVector edges,
UintVector polygon,
VertexLookup  split 
)
inline

Definition at line 1005 of file ConvexDecomposition.cpp.

◆ findEdge()

int ConvexDecomposition::ConvexBuilder::findEdge ( EdgeVector edges,
unsigned int  index 
) const
inline

Definition at line 942 of file ConvexDecomposition.cpp.

◆ findFirstUnused()

int ConvexDecomposition::ConvexBuilder::findFirstUnused ( EdgeVector edges) const
inline

Definition at line 916 of file ConvexDecomposition.cpp.

◆ findNearestEdge()

int ConvexDecomposition::ConvexBuilder::findNearestEdge ( EdgeVector edges,
unsigned int  index,
VertexLookup  verts 
) const
inline

Definition at line 965 of file ConvexDecomposition.cpp.

◆ getMesh()

void ConvexDecomposition::ConvexBuilder::getMesh ( const ConvexResult cr,
VertexLookup  vc 
)
inline

Definition at line 227 of file ConvexDecomposition.cpp.

◆ isDuplicate()

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.

◆ isEdge()

bool ConvexDecomposition::ConvexBuilder::isEdge ( const Vector3d< double > &  p,
const double *  plane 
)
inline

Definition at line 475 of file ConvexDecomposition.cpp.

◆ process()

unsigned int ConvexDecomposition::ConvexBuilder::process ( const DecompDesc desc)
inline

Definition at line 378 of file ConvexDecomposition.cpp.

◆ saveEdges()

void ConvexDecomposition::ConvexBuilder::saveEdges ( VertexLookup  vl,
const EdgeVector edges,
bool  front 
)
inline

Definition at line 554 of file ConvexDecomposition.cpp.

◆ saveObj()

void ConvexDecomposition::ConvexBuilder::saveObj ( VertexLookup  vl,
const UintVector indices,
bool  front 
)
inline

Definition at line 589 of file ConvexDecomposition.cpp.

◆ sortChulls()

void ConvexDecomposition::ConvexBuilder::sortChulls ( CHullVector hulls)
inline

Definition at line 468 of file ConvexDecomposition.cpp.

Member Data Documentation

◆ mCallback

ConvexDecompInterface* ConvexDecomposition::ConvexBuilder::mCallback

Definition at line 1045 of file ConvexDecomposition.cpp.

◆ mChulls

CHullVector ConvexDecomposition::ConvexBuilder::mChulls

Definition at line 1044 of file ConvexDecomposition.cpp.


The documentation for this class was generated from the following file:


convex_decomposition
Author(s): John W. Ratcliff
autogenerated on Wed Mar 2 2022 00:05:00