gluBeginSurface(3G)

gluBeginSurface, gluEndSurface - delimit a NURBS surface definition

As shipped in IRIX 6.5.30. Last changed in IRIX 6.5.15.

NAME
     gluBeginSurface, gluEndSurface - delimit a NURBS surface definition


C SPECIFICATION
     void gluBeginSurface( GLUnurbs* nurb )

     void gluEndSurface( GLUnurbs* nurb )


PARAMETERS
     nurb  Specifies the NURBS object (created with gluNewNurbsRenderer).

DESCRIPTION
     Use gluBeginSurface to mark the beginning of a NURBS surface definition.
     After calling gluBeginSurface, make one or more calls to gluNurbsSurface
     to define the attributes of the surface.  Exactly one of these calls to
     gluNurbsSurface must have a surface type of GL_MAP2_VERTEX_3 or
     GL_MAP2_VERTEX_4.  To mark the end of the NURBS surface definition, call
     gluEndSurface.

     Trimming of NURBS surfaces is supported with gluBeginTrim, gluPwlCurve,
     gluNurbsCurve, and gluEndTrim. See the gluBeginTrim reference page for
     details.

     GL evaluators are used to render the NURBS surface as a set of polygons.
     Evaluator state is preserved during rendering with
     glPushAttrib(GL_EVAL_BIT) and glPopAttrib(). See the glPushAttrib
     reference page for details on exactly what state these calls preserve.

EXAMPLE
     The following commands render a textured NURBS surface with normals; the
     texture coordinates and normals are also described as NURBS surfaces:


          gluBeginSurface(nobj);
             gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2);
             gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL);
             gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4);
          gluEndSurface(nobj);



SEE ALSO
     gluBeginCurve, gluBeginTrim, gluNewNurbsRenderer, gluNurbsCurve,
     gluNurbsSurface, gluPwlCurve