NAME

gluTessEndPolygon - delimit a polygon description

C SPECIFICATION

void gglluuTTeessssEEnnddPPoollyyggoonn( GLUtesselator* _t_e_s_s )

        

delim $$

PARAMETERS

_t_e_s_s
Specifies the tessellation object (created with gglluuNNeewwTTeessss).

DESCRIPTION

gglluuTTeessssBBeeggiinnPPoollyyggoonn and gglluuTTeessssEEnnddPPoollyyggoonn delimit the definition of a convex, concave or self-intersecting polygon. Within each gglluuTTeessssBBeeggiinnPPoollyyggoonn/gglluuTTeessssEEnnddPPoollyyggoonn pair, there must be one or more calls to gglluuTTeessssBBeeggiinnCCoonnttoouurr/gglluuTTeessssEEnnddCCoonnttoouurr. Within each contour, there are zero or more calls to gglluuTTeessssVVeerrtteexx. The vertices specify a closed contour (the last vertex of each contour is automatically linked to the first). See the gglluuTTeessssVVeerrtteexx, gglluuTTeessssBBeeggiinnCCoonnttoouurr and gglluuTTeessssEEnnddCCoonnttoouurr reference pages for more details.

Once gglluuTTeessssEEnnddPPoollyyggoonn is called, the polygon is tessellated, and the resulting triangles are described through callbacks. See gglluuTTeessssCCaallllbbaacckk for descriptions of the callback functions.

EXAMPLE

A quadrilateral with a triangular hole in it can be described like this:

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); In the above example the pointers, $v1$ through $v7$, should point to different addresses, since the values stored at these addresses will not be read by the tesselator until gglluuTTeessssEEnnddPPoollyyggoonn is called.

SEE ALSO

gglluuNNeewwTTeessss((33GG)), gglluuTTeessssBBeeggiinnCCoonnttoouurr((33GG)), gglluuTTeessssVVeerrtteexx((33GG)), gglluuTTeessssCCaallllbbaacckk((33GG)), gglluuTTeessssPPrrooppeerrttyy((33GG)), gglluuTTeessssNNoorrmmaall((33GG)), gglluuTTeessssBBeeggiinnPPoollyyggoonn((33GG))