1GLUNEXTCONTOUR(3G) OpenGL Manual GLUNEXTCONTOUR(3G)
2
3
4
6 gluNextContour - mark the beginning of another contour
7
9 void gluNextContour(GLUtesselator* tess, GLenum type);
10
12 tess
13 Specifies the tessellation object (created with gluNewTess()).
14
15 type
16 Specifies the type of the contour being defined. Valid values are
17 GLU_EXTERIOR, GLU_INTERIOR, GLU_UNKNOWN, GLU_CCW, and GLU_CW.
18
20 gluNextContour is used in describing polygons with multiple contours.
21 After the first contour has been described through a series of
22 gluTessVertex() calls, a gluNextContour call indicates that the
23 previous contour is complete and that the next contour is about to
24 begin. Another series of gluTessVertex() calls is then used to describe
25 the new contour. This process can be repeated until all contours have
26 been described.
27
28 type defines what type of contour follows. The legal contour types are
29 as follows:
30
31 GLU_EXTERIOR
32 An exterior contour defines an exterior boundary of the polygon.
33
34 GLU_INTERIOR
35 An interior contour defines an interior boundary of the polygon
36 (such as a hole).
37
38 GLU_UNKNOWN
39 An unknown contour is analyzed by the library to determine if it is
40 interior or exterior.
41
42 GLU_CCW,
43
44 GLU_CW
45 The first GLU_CCW or GLU_CW contour defined is considered to be
46 exterior. All other contours are considered to be exterior if they
47 are oriented in the same direction (clockwise or counterclockwise)
48 as the first contour, and interior if they are not.
49
50 If one contour is of type GLU_CCW or GLU_CW, then all contours must be
51 of the same type (if they are not, then all GLU_CCW and GLU_CW contours
52 will be changed to GLU_UNKNOWN).
53
54 Note that there is no real difference between the GLU_CCW and GLU_CW
55 contour types.
56
57 Before the first contour is described, gluNextContour can be called to
58 define the type of the first contour. If gluNextContour is not called
59 before the first contour, then the first contour is marked
60 GLU_EXTERIOR.
61
62 This command is obsolete and is provided for backward compatibility
63 only. Calls to gluNextContour are mapped to gluTessEndContour()
64 followed by gluTessBeginContour().
65
67 A quadrilateral with a triangular hole in it can be described as
68 follows:
69
70 gluBeginPolygon(tobj);
71 gluTessVertex(tobj, v1, v1);
72 gluTessVertex(tobj, v2, v2);
73 gluTessVertex(tobj, v3, v3);
74 gluTessVertex(tobj, v4, v4);
75 gluNextContour(tobj, GLU_INTERIOR);
76 gluTessVertex(tobj, v5, v5);
77 gluTessVertex(tobj, v6, v6);
78 gluTessVertex(tobj, v7, v7);
79 gluEndPolygon(tobj);
80
81
82
84 gluBeginPolygon(), gluNewTess(), gluTessBeginContour(),
85 gluTessCallback(), gluTessVertex()
86
88 Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed
89 under the SGI Free Software B License. For details, see
90 http://oss.sgi.com/projects/FreeB/.
91
93 opengl.org
94
95
96
97opengl.org 07/13/2018 GLUNEXTCONTOUR(3G)