xenocara/doc/gl-docs/GLU/beginsurface.3gl
2006-11-29 17:01:51 +00:00

71 lines
2.0 KiB
Plaintext

'\" 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 beginsurf
.ds Xs 47264 4 beginsurface.gl
.TH GLUBEGINSURFACE 3G
.SH NAME
.B "gluBeginSurface, gluEndSurface
\- delimit a NURBS surface definition
.SH C SPECIFICATION
void \f3gluBeginSurface\fP(
GLUnurbs* \fInurb\fP )
.nf
.fi
void \f3gluEndSurface\fP(
GLUnurbs* \fInurb\fP )
.nf
.fi
.EQ
delim $$
.EN
.SH PARAMETERS
.TP \w'\f2nurb\fP\ \ 'u
\f2nurb\fP
Specifies the NURBS object (created with \%\f3gluNewNurbsRenderer\fP).
.SH DESCRIPTION
Use \%\f3gluBeginSurface\fP to mark the beginning of a NURBS
surface definition. After
calling \%\f3gluBeginSurface\fP, make one or more calls to
\%\f3gluNurbsSurface\fP to define the attributes of the surface.
Exactly one of these calls to \%\f3gluNurbsSurface\fP must have a
surface type of \%\f3GL_MAP2_VERTEX_3\fP or \%\f3GL_MAP2_VERTEX_4\fP.
To mark the end of the NURBS surface definition, call
\%\f3gluEndSurface\fP.
.P
Trimming of NURBS surfaces is supported with \%\f3gluBeginTrim\fP,
\%\f3gluPwlCurve\fP, \%\f3gluNurbsCurve\fP, and \%\f3gluEndTrim\fP. See the
\%\f3gluBeginTrim\fP reference page for details.
.P
GL evaluators are used to render the NURBS surface as a set of polygons.
Evaluator state is preserved during rendering
with \f3glPushAttrib\fP(\%\f3GL_EVAL_BIT\fP) and
\f3glPopAttrib\fP().
See the \f3glPushAttrib\fP reference page for details on exactly what state
these calls preserve.
.SH EXAMPLE
The following commands render a textured NURBS surface with normals;
the texture coordinates and normals are also described as NURBS surfaces:
.sp
.Ex
gluBeginSurface(nobj);
gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2);
gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL);
gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4);
gluEndSurface(nobj);
.Ee
.sp
.SH SEE ALSO
\%\f3gluBeginCurve(3G)\fP, \%\f3gluBeginTrim(3G)\fP, \%\f3gluNewNurbsRenderer(3G)\fP,
\%\f3gluNurbsCurve(3G)\fP, \%\f3gluNurbsSurface(3G)\fP, \%\f3gluPwlCurve(3G)\fP