gluBeginSurface.3gl




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

  gluBeginCurve, gluBeginTrim, gluNewNurbsRenderer, gluNurbsCurve,
  gluNurbsSurface, gluPwlCurve




Introduction | Alphabetic | Specification

Last Edited: Mon, May 22, 1995

AFV