sync code with last improvements from OpenBSD
This commit is contained in:
commit
88965415ff
26235 changed files with 29195616 additions and 0 deletions
68
doc/gl-docs/GLU/tessendpolygon.3gl
Normal file
68
doc/gl-docs/GLU/tessendpolygon.3gl
Normal file
|
@ -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
|
Loading…
Add table
Add a link
Reference in a new issue