'\"! eqn | mmdoc '\"macro stdmacro .ds Vn Version 1.2 .ds Dt 6 March 1997 .ds Re Release 1.2.0 .ds Dp Mar 17 18:18 .ds Dm Mar 6 19:5 .ds Xs 24655 4 beginsurface.gl .TH GLUBEGINSURFACE .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\fP, \f3gluBeginTrim\fP, \f3gluNewNurbsRenderer\fP, \f3gluNurbsCurve\fP, \f3gluNurbsSurface\fP, \f3gluPwlCurve\fP