summaryrefslogtreecommitdiff
path: root/doc/gl-docs/GLU/nextcontour.3gl
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gl-docs/GLU/nextcontour.3gl')
-rw-r--r--doc/gl-docs/GLU/nextcontour.3gl102
1 files changed, 102 insertions, 0 deletions
diff --git a/doc/gl-docs/GLU/nextcontour.3gl b/doc/gl-docs/GLU/nextcontour.3gl
new file mode 100644
index 000000000..6640a6a72
--- /dev/null
+++ b/doc/gl-docs/GLU/nextcontour.3gl
@@ -0,0 +1,102 @@
+'\" e
+'\"! eqn | mmdoc
+'\"macro stdmacro
+.ds Vn Version 1.2
+.ds Dt 6 March 1997
+.ds Re Release 1.2.0
+.ds Dp May 02 11:53
+.ds Dm 37 nextconto
+.ds Xs 37451 5 nextcontour.gl
+.TH GLUNEXTCONTOUR 3G
+.SH NAME
+.B "gluNextContour
+\- mark the beginning of another contour
+
+.SH C SPECIFICATION
+void \f3gluNextContour\fP(
+GLUtesselator* \fItess\fP,
+.nf
+.ta \w'\f3void \fPgluNextContour( 'u
+ GLenum \fItype\fP )
+.fi
+
+.EQ
+delim $$
+.EN
+.SH PARAMETERS
+.TP \w'\f2tess\fP\ \ 'u
+\f2tess\fP
+Specifies the tessellation object (created with \%\f3gluNewTess\fP).
+.TP
+\f2type\fP
+Specifies the type of the contour being defined. Valid values are
+\%\f3GLU_EXTERIOR\fP,
+\%\f3GLU_INTERIOR\fP,
+\%\f3GLU_UNKNOWN\fP,
+\%\f3GLU_CCW\fP, and
+\%\f3GLU_CW\fP.
+.SH DESCRIPTION
+\%\f3gluNextContour\fP is used in describing polygons with multiple contours. After the first
+contour has been described through a series of \%\f3gluTessVertex\fP calls,
+a \%\f3gluNextContour\fP call indicates that the previous contour is complete and that the
+next contour is about to begin.
+Another series of \%\f3gluTessVertex\fP calls is then used to describe the new
+contour. This process can be repeated until all contours have been described.
+.P
+\f2type\fP defines what type of contour follows.
+The legal contour types are as follows:
+.TP 18
+\%\f3GLU_EXTERIOR\fP
+An exterior contour defines an exterior boundary of the polygon.
+.TP
+\%\f3GLU_INTERIOR\fP
+An interior contour defines an interior boundary of the polygon (such as
+a hole).
+.TP
+\%\f3GLU_UNKNOWN\fP
+An unknown contour is analyzed by the library to determine if it is interior
+or exterior.
+.TP
+\%\f3GLU_CCW\fP,
+.TP
+\%\f3GLU_CW\fP
+The first \%\f3GLU_CCW\fP or \%\f3GLU_CW\fP 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.
+.P
+If one contour is of type \%\f3GLU_CCW\fP or \%\f3GLU_CW\fP, then all
+contours must be of the same type (if they are not, then all \%\f3GLU_CCW\fP
+and \%\f3GLU_CW\fP contours will be changed to \%\f3GLU_UNKNOWN\fP).
+.P
+Note that there is no real difference between the \%\f3GLU_CCW\fP and
+\%\f3GLU_CW\fP contour types.
+.P
+Before the first contour is described, \%\f3gluNextContour\fP can be called to
+define the type of the first contour.
+If \%\f3gluNextContour\fP is not called before the first contour, then the first contour is
+marked \%\f3GLU_EXTERIOR\fP.
+.P
+This command is obsolete and is provided for backward compatibility
+only. Calls to \%\f3gluNextContour\fP are mapped to \%\f3gluTessEndContour\fP
+followed by
+\%\f3gluTessBeginContour\fP.
+.SH EXAMPLE
+A quadrilateral with a triangular hole in it can be described as follows:
+.sp
+.Ex
+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);
+.Ee
+.SH SEE ALSO
+\%\f3gluBeginPolygon(3G)\fP, \%\f3gluNewTess(3G)\fP, \%\f3gluTessCallback(3G)\fP, \%\f3gluTessVertex(3G)\fP,
+\%\f3gluTessBeginContour(3G)\fP
+