summaryrefslogtreecommitdiff
path: root/doc/gl-docs/GLU/tessendpolygon.3gl
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gl-docs/GLU/tessendpolygon.3gl')
-rw-r--r--doc/gl-docs/GLU/tessendpolygon.3gl68
1 files changed, 68 insertions, 0 deletions
diff --git a/doc/gl-docs/GLU/tessendpolygon.3gl b/doc/gl-docs/GLU/tessendpolygon.3gl
new file mode 100644
index 000000000..e334e401a
--- /dev/null
+++ b/doc/gl-docs/GLU/tessendpolygon.3gl
@@ -0,0 +1,68 @@
+'\" 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 tessendpo
+.ds Xs 16616 4 tessendpolygon.gl
+.TH GLUTESSENDPOLYGON 3G
+.SH NAME
+.B "gluTessEndPolygon
+\- delimit a polygon description
+
+.SH C SPECIFICATION
+void \f3gluTessEndPolygon\fP(
+GLUtesselator* \fItess\fP )
+.nf
+.fi
+
+.EQ
+delim $$
+.EN
+.SH PARAMETERS
+.TP \w'\f2tess\fP\ \ 'u
+\f2tess\fP
+Specifies the tessellation object (created with \%\f3gluNewTess\fP).
+.SH DESCRIPTION
+\%\f3gluTessBeginPolygon\fP and \%\f3gluTessEndPolygon\fP delimit the definition of a
+convex, concave or self-intersecting polygon. Within each \%\f3gluTessBeginPolygon\fP/\%\f3gluTessEndPolygon\fP
+pair, there must be one or more calls to \%\f3gluTessBeginContour\fP/\%\f3gluTessEndContour\fP.
+Within each contour, there are zero or more calls to \%\f3gluTessVertex\fP. The vertices
+specify a closed contour (the last vertex of each contour is automatically linked
+to the first). See the \%\f3gluTessVertex\fP, \%\f3gluTessBeginContour\fP and
+\%\f3gluTessEndContour\fP reference pages for more details.
+.P
+Once \%\f3gluTessEndPolygon\fP is called, the polygon is tessellated, and the
+resulting triangles are described through callbacks.
+See \%\f3gluTessCallback\fP for descriptions of the callback functions.
+.SH EXAMPLE
+A quadrilateral with a triangular hole in it can be described like this:
+.sp
+.Ex
+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);
+.Ee
+.bp
+In the above example the pointers, $v1$ through $v7$,
+should point to different
+addresses,
+since the values stored at these addresses will not be read by
+the tesselator until \%\f3gluTessEndPolygon\fP is called.
+.SH SEE ALSO
+\%\f3gluNewTess(3G)\fP, \%\f3gluTessBeginContour(3G)\fP, \%\f3gluTessVertex(3G)\fP,
+\%\f3gluTessCallback(3G)\fP,
+\%\f3gluTessProperty(3G)\fP, \%\f3gluTessNormal(3G)\fP,
+\%\f3gluTessBeginPolygon(3G)\fP