fgluNextContour(3G) OpenGL Reference fgluNextContour(3G)NAME
fgluNextContour - mark the beginning of another contour
FORTRAN SPECIFICATION
SUBROUTINE fgluNextContour( CHARACTER*8 tess,
INTEGER*4 type )
PARAMETERS
tess Specifies the tessellation object (created with fgluNewTess).
type Specifies the type of the contour being defined. Valid values are
GLU_EXTERIOR, GLU_INTERIOR, GLU_UNKNOWN, GLU_CCW, and GLU_CW.
DESCRIPTION
fgluNextContour is used in describing polygons with multiple contours.
After the first contour has been described through a series of
fgluTessVertex calls, a fgluNextContour call indicates that the previous
contour is complete and that the next contour is about to begin. Another
series of fgluTessVertex calls is then used to describe the new contour.
This process can be repeated until all contours have been described.
type defines what type of contour follows. The legal contour types are
as follows:
GLU_EXTERIOR An exterior contour defines an exterior boundary of the
polygon.
GLU_INTERIOR An interior contour defines an interior boundary of the
polygon (such as a hole).
GLU_UNKNOWN An unknown contour is analyzed by the library to
determine if it is interior or exterior.
GLU_CCW,
GLU_CW The first GLU_CCW or GLU_CW contour defined is
considered to be exterior. All other contours are
considered to be exterior if they are oriented in the
same direction (clockwise or counterclockwise) as the
first contour, and interior if they are not.
If one contour is of type GLU_CCW or GLU_CW, then all contours must be of
the same type (if they are not, then all GLU_CCW and GLU_CW contours will
be changed to GLU_UNKNOWN).
Note that there is no real difference between the GLU_CCW and GLU_CW
contour types.
Page 1
fgluNextContour(3G) OpenGL Reference fgluNextContour(3G)
Before the first contour is described, fgluNextContour can be called to
define the type of the first contour. If fgluNextContour is not called
before the first contour, then the first contour is marked GLU_EXTERIOR.
This command is obsolete and is provided for backward compatibility only.
Calls to fgluNextContour are mapped to fgluTessEndContour followed by
fgluTessBeginContour.
EXAMPLE
A quadrilateral with a triangular hole in it can be described as follows:
gluBeginPolygon(tobj);
gluTessVertex(tobj, v1, v1);
gluTessVertex(tobj, v2, v2);
gluTessVertex(tobj, v3, v3);
gluTessVertex(tobj, v4, v4);
gluNextContour(tobj, GLU_INTERIOR);
gluTessVertex(tobj, v5, v5);
gluTessVertex(tobj, v6, v6);
gluTessVertex(tobj, v7, v7);
gluEndPolygon(tobj);
SEE ALSO
fgluBeginPolygon, fgluNewTess, fgluTessCallback, fgluTessVertex,
fgluTessBeginContour
Page 2