Newton Dynamics  4.00
dPolyhedra Class Reference
Inheritance diagram for dPolyhedra:
dClassAlloc dTree< dEdge, dEdgeKey > dPolygonSoupBuilder::dgPolySoupFilterAllocator ndMeshEffect ndShapeInstanceMeshBuilder

Classes

class  dgPairKey
 

Public Member Functions

D_CORE_API dPolyhedra (const dPolyhedra &polyhedra)
 
virtual bool ReportProgress (dFloat32 percentProgress) const
 
virtual void BeginFace ()
 
dEdgeAddFace (dInt32 v0, dInt32 v1, dInt32 v2)
 
dEdgeAddFace (dInt32 count, const dInt32 *const index)
 
D_CORE_API dEdgeAddFace (dInt32 count, const dInt32 *const index, const dInt64 *const userdata)
 
virtual D_CORE_API bool EndFace ()
 
virtual D_CORE_API void DeleteFace (dEdge *const edge)
 
D_CORE_API dInt32 GetFaceCount () const
 
dInt32 GetEdgeCount () const
 
dInt32 GetLastVertexIndex () const
 
dInt32 IncLRU () const
 
dInt32 GetLRU () const
 
void SetLRU (dInt32 lru) const
 
dEdgeFindEdge (dInt32 v0, dInt32 v1) const
 
dTreeNode * FindEdgeNode (dInt32 v0, dInt32 v1) const
 
D_CORE_API dEdgeAddHalfEdge (dInt32 v0, dInt32 v1)
 
D_CORE_API void DeleteEdge (dEdge *const edge)
 
void DeleteEdge (dInt32 v0, dInt32 v1)
 
D_CORE_API dEdgeConnectVertex (dEdge *const e0, dEdge *const e1)
 
D_CORE_API bool FlipEdge (dEdge *const edge)
 
D_CORE_API dEdgeSpliteEdge (dInt32 newIndex, dEdge *const edge)
 
D_CORE_API dBigVector FaceNormal (const dEdge *const face, const dFloat64 *const vertex, dInt32 strideInBytes) const
 
D_CORE_API void SavePLY (const char *const fileName, const dFloat64 *const vertex, dInt32 strideInBytes) const
 
void BeginConectedSurface () const
 
D_CORE_API bool GetConectedSurface (dPolyhedra &polyhedra) const
 
void EndConectedSurface () const
 
D_CORE_API void ChangeEdgeIncidentVertex (dEdge *const edge, dInt32 newIndex)
 
D_CORE_API void DeleteDegenerateFaces (const dFloat64 *const pool, dInt32 dstStrideInBytes, dFloat64 minArea)
 
D_CORE_API bool Optimize (const dFloat64 *const pool, dInt32 strideInBytes, dFloat64 tol, dInt32 maxFaceCount=1<< 28)
 
D_CORE_API void Triangulate (const dFloat64 *const vertex, dInt32 strideInBytes, dPolyhedra *const leftOversOut)
 
D_CORE_API void ConvexPartition (const dFloat64 *const vertex, dInt32 strideInBytes, dPolyhedra *const leftOversOut)
 
D_CORE_API bool IsFaceConvex (dEdge *const face, const dFloat64 *const pool, dInt32 strideInBytes) const
 
- Public Member Functions inherited from dClassAlloc
 dClassAlloc ()
 Empty.
 
 ~dClassAlloc ()
 Empty.
 
void * operator new (size_t size)
 Overloaded operator new for any subclass derived from dClassAlloc.
 
void operator delete (void *ptr)
 Overloaded operator delete for any subclass derived from dClassAlloc.
 
- Public Member Functions inherited from dTree< dEdge, dEdgeKey >
 operator dInt32 () const
 
const dInt32 GetCount () const
 
dTreeNode * GetRoot () const
 
dTreeNode * Minimum () const
 
dTreeNode * Maximum () const
 
dTreeNode * Find (dEdgeKey key) const
 
dTreeNode * FindGreater (dEdgeKey key) const
 
dTreeNode * FindLessEqual (dEdgeKey key) const
 
dTreeNode * FindGreaterEqual (dEdgeKey key) const
 
dTreeNode * FindCreate (dEdgeKey key, bool &wasFound)
 
dTreeNode * GetNodeFromInfo (dEdge &info) const
 
dTreeNode * Insert (const dEdge &element, dEdgeKey key, bool &wasFound)
 
dTreeNode * Insert (const dEdge &element, dEdgeKey key)
 
dTreeNode * Insert (dTreeNode *const node, dEdgeKey key)
 
dTreeNode * Replace (dEdge &element, dEdgeKey key)
 
dTreeNode * ReplaceKey (dEdgeKey oldKey, dEdgeKey newKey)
 
dTreeNode * ReplaceKey (dTreeNode *const node, dEdgeKey key)
 
void Remove (dEdgeKey key)
 
void Remove (dTreeNode *const node)
 
void RemoveAll ()
 
void Unlink (dTreeNode *const node)
 
void SwapInfo (dTree &tree)
 
bool SanityCheck () const
 

Protected Member Functions

D_CORE_API dEdgeCollapseEdge (dEdge *const edge)
 
D_CORE_API bool PolygonizeFace (dEdge *const face, const dFloat64 *const pool, dInt32 stride)
 
D_CORE_API bool TriangulateFace (dEdge *const face, const dFloat64 *const pool, dInt32 stride)
 

Friends

class dPolyhedraDescriptor
 

Additional Inherited Members

- Static Public Member Functions inherited from dClassAlloc
static D_CORE_API void * Malloc (size_t size)
 Generic allocation for any function subclass from dClassAlloc.
 
static D_CORE_API void Free (void *const ptr)
 Generic destruction for any function subclass from dClassAlloc.
 
- Static Public Member Functions inherited from dTree< dEdge, dEdgeKey >
static void FlushFreeList ()