gluTessBeginPolygon() gluTessBeginPolygon()
gluTessBeginPolygon - delimit a polygon description
void gluTessBeginPolygon(
GLUtesselator* tess,
GLvoid* data );
Specifies the tessellation object (created with gluNewTess()).
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 perpolygon
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(3), gluTessBeginContour(3), gluTessVertex(3),
gluTessCallback(3), gluTessProperty(3), gluTessNormal(3),
gluTessEndPolygon(3)
gluTessBeginPolygon()
[ Back ] |