GLUBEGINSURFACE() MachTen Programmer’s Manual GLUBEGINSURFACE()
NAME
gluBeginSurface, gluEndSurface - delimit a NURBS surface
definition
C SPECIFICATION
void gluBeginSurface( GLUnurbs* nurb )
void gluEndSurface( GLUnurbs* nurb )
delim $$
PARAMETERS
nurb Specifies the NURBS object (created with gluNewNurb-
sRenderer).
DESCRIPTION
Use gluBeginSurface to mark the beginning of a NURBS sur-
face definition. After calling gluBeginSurface, make one
or more calls to gluNurbsSurface to define the attributes
of the surface. Exactly one of these calls to gluNurb-
sSurface 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 gluBe-
ginTrim reference page for details.
GL evaluators are used to render
the NURBS surface as a
set of polygons. Evaluator state is preserved during ren-
dering 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); gluEnd-
Surface(nobj);
SEE ALSO
gluBeginCurve, gluBeginTrim, gluNewNurbsRenderer, gluNurb-
sCurve, gluNurbsSurface, gluPwlCurve
MachTen 1