class OSGUTIL_EXPORT osgUtil::Tesselator

A simple class for tessellating a single polygon boundary.

Public Methods

[more] Tesselator()
[more] ~Tesselator()
[more]void beginTesselation()
[more]void beginContour()
[more]void addVertex(osg::Vec3* vertex)
[more]void endContour()
[more]void endTesselation()
[more]PrimList& getPrimList()
[more]void retesselatePolygons(osg::Geometry& geom)
[more]void reset()

Public Members

[more]enum InputBoundaryDirection
[more]typedef std::vector<osg::Vec3*> VertexPointList
[more]struct Prim: public osg::Referenced
[more]typedef std::vector< osg::ref_ptr<Prim> > PrimList

Protected Fields

[more]GLUtesselator* _tobj
[more]PrimList _primList
[more]Vec3dList _coordData
[more]NewVertexList _newVertexList
[more]GLenum _errorCode

Protected Methods

[more]void begin(GLenum mode)
[more]void vertex(osg::Vec3* vertex)
[more]void combine(osg::Vec3* vertex, void* vertex_data[4], GLfloat weight[4])
[more]void end()
[more]void error(GLenum errorCode)
[more]static void CALLBACK beginCallback(GLenum which, void* userData)
[more]static void CALLBACK vertexCallback(GLvoid* data, void* userData)
[more]static void CALLBACK combineCallback(GLdouble coords[3], void* vertex_data[4], GLfloat weight[4], void** outData, void* useData)
[more]static void CALLBACK endCallback(void* userData)
[more]static void CALLBACK errorCallback(GLenum errorCode, void* userData)

Protected Members

[more]struct Vec3d
[more]struct NewVertex
[more]typedef std::map<osg::Vec3*,NewVertex> NewVertexList
[more]typedef std::vector<Vec3d*> Vec3dList


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.
o Tesselator()

o ~Tesselator()

oenum InputBoundaryDirection

o CLOCK_WISE

o COUNTER_CLOCK_WISE

otypedef std::vector<osg::Vec3*> VertexPointList

ostruct Prim: public osg::Referenced

o Prim(GLenum mode)

otypedef std::vector<osg::Vec3*> VecList

oGLenum _mode

oVecList _vertices

ovoid beginTesselation()

ovoid beginContour()

ovoid addVertex(osg::Vec3* vertex)

ovoid endContour()

ovoid endTesselation()

otypedef std::vector< osg::ref_ptr<Prim> > PrimList

oPrimList& getPrimList()

ovoid retesselatePolygons(osg::Geometry& geom)

ovoid reset()

ovoid begin(GLenum mode)

ovoid vertex(osg::Vec3* vertex)

ovoid combine(osg::Vec3* vertex, void* vertex_data[4], GLfloat weight[4])

ovoid end()

ovoid error(GLenum errorCode)

ostatic void CALLBACK beginCallback(GLenum which, void* userData)

ostatic void CALLBACK vertexCallback(GLvoid* data, void* userData)

ostatic void CALLBACK combineCallback(GLdouble coords[3], void* vertex_data[4], GLfloat weight[4], void** outData, void* useData)

ostatic void CALLBACK endCallback(void* userData)

ostatic void CALLBACK errorCallback(GLenum errorCode, void* userData)

ostruct Vec3d

odouble _v[3]

ostruct NewVertex

o NewVertex()

o NewVertex(const NewVertex& nv)

o NewVertex(float f1, osg::Vec3* v1, float f2, osg::Vec3* v2, float f3, osg::Vec3* v3, float f4, osg::Vec3* v4)

ofloat _f1

oosg::Vec3* _v1

ofloat _f2

oosg::Vec3* _v2

ofloat _f3

oosg::Vec3* _v3

ofloat _f4

oosg::Vec3* _v4

otypedef std::map<osg::Vec3*,NewVertex> NewVertexList

otypedef std::vector<Vec3d*> Vec3dList

oGLUtesselator* _tobj

oPrimList _primList

oVec3dList _coordData

oNewVertexList _newVertexList

oGLenum _errorCode


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.