Horizon
Classes | Public Member Functions | Protected Member Functions | List of all members
TPPLPartition Class Reference

Classes

struct  Diagonal
 
struct  DPState
 
struct  DPState2
 
struct  MonotoneVertex
 
struct  PartitionVertex
 
struct  ScanLineEdge
 
class  VertexSorter
 

Public Member Functions

int RemoveHoles (std::list< TPPLPoly > *inpolys, std::list< TPPLPoly > *outpolys)
 
int Triangulate_EC (TPPLPoly *poly, std::list< TPPLPoly > *triangles)
 
int Triangulate_EC (std::list< TPPLPoly > *inpolys, std::list< TPPLPoly > *triangles)
 
int Triangulate_OPT (TPPLPoly *poly, std::list< TPPLPoly > *triangles)
 
int Triangulate_MONO (TPPLPoly *poly, std::list< TPPLPoly > *triangles)
 
int Triangulate_MONO (std::list< TPPLPoly > *inpolys, std::list< TPPLPoly > *triangles)
 
int MonotonePartition (std::list< TPPLPoly > *inpolys, std::list< TPPLPoly > *monotonePolys)
 
int ConvexPartition_HM (TPPLPoly *poly, std::list< TPPLPoly > *parts)
 
int ConvexPartition_HM (std::list< TPPLPoly > *inpolys, std::list< TPPLPoly > *parts)
 
int ConvexPartition_OPT (TPPLPoly *poly, std::list< TPPLPoly > *parts)
 

Protected Member Functions

bool IsConvex (TPPLPoint &p1, TPPLPoint &p2, TPPLPoint &p3)
 
bool IsReflex (TPPLPoint &p1, TPPLPoint &p2, TPPLPoint &p3)
 
bool IsInside (TPPLPoint &p1, TPPLPoint &p2, TPPLPoint &p3, TPPLPoint &p)
 
bool InCone (TPPLPoint &p1, TPPLPoint &p2, TPPLPoint &p3, TPPLPoint &p)
 
bool InCone (PartitionVertex *v, TPPLPoint &p)
 
int Intersects (TPPLPoint &p11, TPPLPoint &p12, TPPLPoint &p21, TPPLPoint &p22)
 
TPPLPoint Normalize (const TPPLPoint &p)
 
tppl_float Distance (const TPPLPoint &p1, const TPPLPoint &p2)
 
void UpdateVertexReflexity (PartitionVertex *v)
 
void UpdateVertex (PartitionVertex *v, PartitionVertex *vertices, long numvertices)
 
void UpdateState (long a, long b, long w, long i, long j, DPState2 **dpstates)
 
void TypeA (long i, long j, long k, PartitionVertex *vertices, DPState2 **dpstates)
 
void TypeB (long i, long j, long k, PartitionVertex *vertices, DPState2 **dpstates)
 
bool Below (TPPLPoint &p1, TPPLPoint &p2)
 
void AddDiagonal (MonotoneVertex *vertices, long *numvertices, long index1, long index2, char *vertextypes, std::set< ScanLineEdge >::iterator *edgeTreeIterators, std::set< ScanLineEdge > *edgeTree, long *helpers)
 
int TriangulateMonotone (TPPLPoly *inPoly, std::list< TPPLPoly > *triangles)
 

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