DragonFly On-Line Manual Pages
GLUTESSBEGINPOLYGON() GLUTESSBEGINPOLYGON()
NAME
gluTessBeginPolygon - delimit a polygon description
C SPECIFICATION
void gluTessBeginPolygon( GLUtesselator* tess,
GLvoid* data )
PARAMETERS
tess Specifies the tessellation object (created with gluNewTess).
data Specifies a pointer to user polygon data.
DESCRIPTION
gluTessBeginPolygon and gluTessEndPolygon delimit the definition of a
convex, concave or self-intersecting polygon. Within each
gluTessBeginPolygon/gluTessEndPolygon pair, there must be one or more
calls to gluTessBeginContour/gluTessEndContour. Within each contour,
there are zero or more calls to gluTessVertex. The vertices specify a
closed contour (the last vertex of each contour is automatically linked
to the first). See the gluTessVertex, gluTessBeginContour, and
gluTessEndContour reference pages for more details.
data is a pointer to a user-defined data structure. If the appropriate
callback(s) are specified (see gluTessCallback), then this pointer is
returned to the callback function(s). Thus, it is a convenient way to
store per-polygon information.
Once gluTessEndPolygon is called, the polygon is tessellated, and the
resulting triangles are described through callbacks. See
gluTessCallback for descriptions of the callback functions.
EXAMPLE
A quadrilateral with a triangular hole in it can be described as
follows:
gluTessBeginPolygon(tobj, NULL);
gluTessBeginContour(tobj);
gluTessVertex(tobj, v1, v1);
gluTessVertex(tobj, v2, v2);
gluTessVertex(tobj, v3, v3);
gluTessVertex(tobj, v4, v4);
gluTessEndContour(tobj);
gluTessBeginContour(tobj);
gluTessVertex(tobj, v5, v5);
gluTessVertex(tobj, v6, v6);
gluTessVertex(tobj, v7, v7);
gluTessEndContour(tobj); gluTessEndPolygon(tobj);
SEE ALSO
gluNewTess, gluTessBeginContour, gluTessVertex, gluTessCallback,
gluTessProperty, gluTessNormal, gluTessEndPolygon
GLUTESSBEGINPOLYGON()