iso::geom::Tesselator Class Reference

triangulation helper class More...

#include <iso_geom_tesselator.h>

Collaboration diagram for iso::geom::Tesselator:

Collaboration graph
[legend]
List of all members.

Public Member Functions

void setTesselationRule (TesselationRule pTesselationRule)
void setTesselationRule (GLenum pTesselationRule)
void tesselate (const QVector< PolyLine > &pContours, QVector< math::Vector3< double > > &pTessVertices, QVector< unsigned int * > &pFaceVertexIndices)

Static Public Member Functions

static Tesselatorget ()
static void destroy ()

Protected Member Functions

 Tesselator ()
 ~Tesselator ()
int init ()
int processContour (unsigned int pVertexIndex, unsigned int pVertexCount)
int beginPolygon ()
int endPolygon ()
int beginContour ()
int endContour ()
int end ()

Static Protected Member Functions

static void beginCallback (GLenum which)
 tesselator blocks till it finished tesselating
static void endCallback ()
static void combineCallback (GLdouble coords[3], void *vertex_data[4], GLfloat weight[4], unsigned int **dataOut)
static void vertexCallback (GLvoid *vertex)

Protected Attributes

QVector< math::Vector3< double > > * mTessVertices
QVector< int > mTessVertexSequence
QVector< unsigned int * > mTessVertexIndices
QVector< unsigned int * > * mTessFaceVertexIndices
TesselationMode mTesselationMode
MeshmMesh
GLUtesselator * mTessObj
GLdouble mTesselationRule
 the tessellation object
QHash< TesselationRule, GLdouble > mTesselationRules
QMutex mLock

Static Protected Attributes

static TesselatorsTesselator

Detailed Description

triangulation helper class

class

Created by Daniel Bisig on 08/07/08.


Constructor & Destructor Documentation

Tesselator::Tesselator (  )  [protected]

Tesselator::~Tesselator (  )  [protected]


Member Function Documentation

void Tesselator::setTesselationRule ( TesselationRule  pTesselationRule  ) 

void Tesselator::setTesselationRule ( GLenum  pTesselationRule  ) 

void Tesselator::tesselate ( const QVector< PolyLine > &  pContours,
QVector< math::Vector3< double > > &  pTessVertices,
QVector< unsigned int * > &  pFaceVertexIndices 
)

Tesselator & Tesselator::get (  )  [static]

void Tesselator::destroy (  )  [static]

void Tesselator::beginCallback ( GLenum  which  )  [static, protected]

tesselator blocks till it finished tesselating

void Tesselator::endCallback (  )  [static, protected]

void Tesselator::combineCallback ( GLdouble  coords[3],
void *  vertex_data[4],
GLfloat  weight[4],
unsigned int **  dataOut 
) [static, protected]

void Tesselator::vertexCallback ( GLvoid *  vertex  )  [static, protected]

int Tesselator::init (  )  [protected]

int Tesselator::processContour ( unsigned int  pVertexIndex,
unsigned int  pVertexCount 
) [protected]

int Tesselator::beginPolygon (  )  [protected]

int Tesselator::endPolygon (  )  [protected]

int Tesselator::beginContour (  )  [protected]

int Tesselator::endContour (  )  [protected]

int Tesselator::end (  )  [protected]


Member Data Documentation

Tesselator * Tesselator::sTesselator [static, protected]

QVector< math::Vector3<double> >* iso::geom::Tesselator::mTessVertices [protected]

QVector< int > iso::geom::Tesselator::mTessVertexSequence [protected]

QVector< unsigned int* > iso::geom::Tesselator::mTessVertexIndices [protected]

QVector< unsigned int* >* iso::geom::Tesselator::mTessFaceVertexIndices [protected]

TesselationMode iso::geom::Tesselator::mTesselationMode [protected]

Mesh* iso::geom::Tesselator::mMesh [protected]

GLUtesselator* iso::geom::Tesselator::mTessObj [protected]

GLdouble iso::geom::Tesselator::mTesselationRule [protected]

the tessellation object

QHash< TesselationRule, GLdouble > iso::geom::Tesselator::mTesselationRules [protected]

QMutex iso::geom::Tesselator::mLock [protected]


The documentation for this class was generated from the following files:
Generated on Wed Jun 2 20:43:24 2010 for iso_geom by  doxygen 1.5.1