GemaCoreLib
The GeMA Core library
Loading...
Searching...
No Matches
GmPolygonTriangulator Class Reference
Collaboration diagram for GmPolygonTriangulator:

Classes

struct  CostIndex
 
struct  Node
 

Static Public Member Functions

template<class T >
static int triangulate (const QVector< GmVector3 > &points, QVector< int > &outTriIndex, const QVector< T > &indexList)
 

Static Private Member Functions

static int gTriangulate (const QVector< GmVector3 > &points, int pcount, std::function< int(int)> index, QVector< int > &outTriIndex)
 
static int dpTriangulate (const QVector< GmVector3 > &points, int pcount, std::function< int(int)> index, QVector< int > &outTriIndex)
 
static int triangulateNodes (const QVector< GmVector3 > &points, QVector< Node > &nodes, QVector< int > &outTriIndex)
 
static void updateNodeCos (const QVector< GmVector3 > &points, Node *node)
 
static void removeNode (const QVector< GmVector3 > &points, Node *node)
 
static int dpPushTriangles (int i, int j, CostIndex dp[MAX_POLY_SIZE][MAX_POLY_SIZE], std::function< int(int)> index, QVector< int > &outTriIndex)
 
static void dpFillTable (const QVector< GmVector3 > &points, int pcount, CostIndex dp[MAX_POLY_SIZE][MAX_POLY_SIZE], std::function< int(int)> index)
 
template<class T >
static std::function< int(int)> makeIndexFunction (const QVector< T > &indexList)
 
template<>
std::function< int(int)> makeIndexFunction (const QVector< QPair< int, signed char > > &indexList)
 
template<>
std::function< int(int)> makeIndexFunction (const QVector< int > &indexList)
 

Private Attributes

QVector< Node_nodes
 
const GmVector3_points
 
int _pcount
 

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