A simple class for tessellating a single polygon boundary.
Public Methods
-
Tesselator()
-
~Tesselator()
-
void beginTesselation()
-
void beginContour()
-
void addVertex(osg::Vec3* vertex)
-
void endContour()
-
void endTesselation()
-
typedef std::vector< osg::ref_ptr<Prim> > PrimList PrimList& getPrimList()
-
void retesselatePolygons(osg::Geometry& geom)
-
void reset()
Public Members
-
enum InputBoundaryDirection
-
typedef std::vector<osg::Vec3*> VertexPointListstruct Prim: public osg::Referenced
Protected Fields
-
PrimList _primList
-
Vec3dList _coordData
-
NewVertexList _newVertexList
-
GLenum _errorCode
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 void CALLBACK beginCallback(GLenum which, void* userData)
-
static void CALLBACK vertexCallback(GLvoid* data, void* userData)
-
static void CALLBACK combineCallback(GLdouble coords[3], void* vertex_data[4], GLfloat weight[4], void** outData, void* useData)
-
static void CALLBACK endCallback(void* userData)
-
static void CALLBACK errorCallback(GLenum errorCode, void* userData)
Protected Members
-
struct Vec3d
-
struct NewVertex
-
typedef std::vector<Vec3d*> Vec3dList GLUtesselator* _tobj
Documentation
A simple class for tessellating a single polygon boundary.
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.
- Tesselator()
- ~Tesselator()
- enum InputBoundaryDirection
- CLOCK_WISE
- COUNTER_CLOCK_WISE
- typedef std::vector<osg::Vec3*> VertexPointListstruct Prim: public osg::Referenced
- Prim(GLenum mode)
- typedef std::vector<osg::Vec3*> VecList GLenum _mode
- VecList _vertices
- void beginTesselation()
- void beginContour()
- void addVertex(osg::Vec3* vertex)
- void endContour()
- void endTesselation()
- typedef std::vector< osg::ref_ptr<Prim> > PrimList PrimList& getPrimList()
- void retesselatePolygons(osg::Geometry& geom)
- void reset()
- 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 void CALLBACK beginCallback(GLenum which, void* userData)
- static void CALLBACK vertexCallback(GLvoid* data, void* userData)
- static void CALLBACK combineCallback(GLdouble coords[3], void* vertex_data[4], GLfloat weight[4], void** outData, void* useData)
- static void CALLBACK endCallback(void* userData)
- static void CALLBACK errorCallback(GLenum errorCode, void* userData)
- struct Vec3d
- double _v[3]
- struct NewVertex
- NewVertex()
- NewVertex(const NewVertex& nv)
- NewVertex(float f1, osg::Vec3* v1, float f2, osg::Vec3* v2, float f3, osg::Vec3* v3, float f4, osg::Vec3* v4)
- float _f1
- osg::Vec3* _v1
- float _f2
- osg::Vec3* _v2
- float _f3
- osg::Vec3* _v3
- float _f4
- osg::Vec3* _v4
- typedef std::vector<Vec3d*> Vec3dList GLUtesselator* _tobj
- PrimList _primList
- Vec3dList _coordData
- NewVertexList _newVertexList
- GLenum _errorCode
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.