Public Types | |
| typedef std::vector< osg::Vec3 * > | VertexPointList |
| typedef std::vector< osg::ref_ptr< Prim > > | PrimList |
| enum | InputBoundaryDirection { CLOCK_WISE, COUNTER_CLOCK_WISE } |
Public Methods | |
| Tesselator () | |
| ~Tesselator () | |
| void | beginTesselation () |
| void | beginContour () |
| void | addVertex (osg::Vec3 *vertex) |
| void | endContour () |
| void | endTesselation () |
| PrimList & | getPrimList () |
| void | retesselatePolygons (osg::Geometry &geom) |
| void | reset () |
Protected Types | |
| typedef std::map< osg::Vec3 *, NewVertex > | NewVertexList |
| typedef std::vector< Vec3d * > | Vec3dList |
Protected Methods | |
| void | begin (GLenum mode) |
| void | vertex (osg::Vec3 *vertex) |
| void | combine (osg::Vec3 *vertex, void *vertex_data[4], GLfloat weight[4]) |
| void | end () |
| void | error (GLenum errorCode) |
Static Protected Methods | |
| void CALLBACK | beginCallback (GLenum which, void *userData) |
| void CALLBACK | vertexCallback (GLvoid *data, void *userData) |
| void CALLBACK | combineCallback (GLdouble coords[3], void *vertex_data[4], GLfloat weight[4], void **outData, void *useData) |
| void CALLBACK | endCallback (void *userData) |
| void CALLBACK | errorCallback (GLenum errorCode, void *userData) |
Protected Attributes | |
| GLUtesselator * | _tobj |
| PrimList | _primList |
| Vec3dList | _coordData |
| NewVertexList | _newVertexList |
| GLenum | _errorCode |
Currently uses old style glu tessellation functions for portability. It be nice to use the modern glu tessellation functions or to find a small set of code for doing this job better.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|