Table of Contents
gluTessBeginPolygon - delimit a polygon description 
 
void
gluTessBeginPolygon( GLUtesselator* tess, 
    GLvoid* data )
 eqn not supported
- tess 
- Specifies the tessellation object (created
with gluNewTess). 
- data 
- Specifies a pointer to user polygon data. 
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. 
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);  
gluNewTess(3G)
, gluTessBeginContour(3G)
,
gluTessVertex(3G)
,  gluTessCallback(3G)
, gluTessProperty(3G)
, gluTessNormal(3G)
,
gluTessEndPolygon(3G)
 
Table of Contents