Porting NURBS Objects

OpenGL treats NURBS as objects, similar to the way it treats quadrics: you create a NURBS object and then specify how it should be rendered. The following table lists the OpenGL GLU functions for managing NURBS objects.

OpenGL GLU function Meaning
gluNewNurbsRenderer Creates a new NURBS object.
gluDeleteNurbsRenderer Deletes a NURBS object.
gluNurbsCallback Associates a callback with a NURBS object, for error handling.

 

When porting IRIS GL NURBS code to OpenGL, keep the following points in mind:

  • NURBS control points are floats, not doubles.
  • The stride parameter is counted in floats, not bytes.
  • If you're using lighting and you're not specifying normals, call glEnable with GL_AUTO_NORMAL as the parameter to generate normals automatically.

??