gluBeginSurface, gluEndSurface
NAME
gluBeginSurface, gluEndSurface -- delimit a NURBS
surface definition
C SPECIFICATION
void gluBeginSurface(GLUnurbsObj *nobj)
void gluEndSurface(GLUnurbsObj *nobj)
PARAMETERS
- nobj
-
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. Refer to the
gluBeginTrim reference page for
details.
OpenGL 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
glPopAttrib,
glPushAttrib,
gluBeginCurve,
gluBeginTrim,
gluNewNurbsRenderer,
gluNurbsCurve,
gluNurbsSurface,
gluPwlCurve
back to the < A HREF = "./opengl.html">OpenGL index page
© 1995 Uwe Behrens All rights reserved