NAME
fgluTessBeginPolygon - delimit a polygon description
FORTRAN SPECIFICATION
SUBROUTINE fgluTessBeginPolygon( CHARACTER*8 tess,
CHARACTER*8 data )
PARAMETERS
tess Specifies the tessellation object (created with
fgluNewTess).
data Specifies a pointer to user polygon data.
DESCRIPTION
fgluTessBeginPolygon and fgluTessEndPolygon delimit the
definition of a convex, concave or self-intersecting
polygon. Within each fgluTessBeginPolygon/fgluTessEndPolygon
pair, there must be one or more calls to
fgluTessBeginContour/fgluTessEndContour. Within each
contour, there are zero or more calls to fgluTessVertex. The
vertices specify a closed contour (the last vertex of each
contour is automatically linked to the first). See the
fgluTessVertex, fgluTessBeginContour, and fgluTessEndContour
reference pages for more details.
data is a pointer to a user-defined data structure. If the
appropriate callback(s) are specified (see
fgluTessCallback), then this pointer is returned to the
callback function(s). Thus, it is a convenient way to store
per-polygon information.
Once fgluTessEndPolygon is called, the polygon is
tessellated, and the resulting triangles are described
through callbacks. See fgluTessCallback 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
fgluNewTess, fgluTessBeginContour, fgluTessVertex,
fgluTessCallback, fgluTessProperty, fgluTessNormal,
fgluTessEndPolygon