*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> gluNurbsProperty (3)              
Title
Content
Arch
Section
 

Contents


gluNurbsProperty()                             gluNurbsProperty()


NAME    [Toc]    [Back]

       gluNurbsProperty - set a NURBS property

SYNOPSIS    [Toc]    [Back]

       void gluNurbsProperty(
               GLUnurbs* nurb,
               GLenum property,
               GLfloat value );

PARAMETERS    [Toc]    [Back]

       Specifies  the  NURBS object (created with gluNewNurbsRenderer()).
  Specifies the property to be set. Valid  values
       are GLU_SAMPLING_TOLERANCE, GLU_DISPLAY_MODE, GLU_CULLING,
       GLU_AUTO_LOAD_MATRIX,  GLU_PARAMETRIC_TOLERANCE,  GLU_SAMPLING_METHOD,
       GLU_U_STEP,       GLU_V_STEP,       or
       GLU_NURBS_MODE_EXT.  Specifies the value of the  indicated
       property.  It  may  be a numeric value, or one of GLU_OUTLINE_POLYGON,
   GLU_FILL,   GLU_OUTLINE_PATCH,    GL_TRUE,
       GL_FALSE,      GLU_PATH_LENGTH,      GLU_PARAMETRIC_ERROR,
       GLU_DOMAIN_DISTANCE,      GLU_NURBS_RENDERER_EXT,       or
       GLU_NURBS_TESSELLATOR_EXT.

DESCRIPTION    [Toc]    [Back]

       gluNurbsProperty() is used to control properties stored in
       a NURBS object. These properties affect  the  way  that  a
       NURBS  curve is rendered. The accepted values for property
       are  as  follows:  value  should  be  set  to  be   either
       GLU_NURBS_RENDERER_EXT  or GLU_NURBS_TESSELLATOR_EXT. When
       set to GLU_NURBS_RENDERER_EXT, NURBS objects  are  tessellated
  into openGL primitives and sent to the pipeline for
       rendering. When set  to  GLU_NURBS_TESSELLATOR_EXT,  NURBS
       objects  are  tessellated  into  openGL primitives but the
       vertices, normals, colors, and/or textures  are  retrieved
       back  through  a  callback  interface  (see  gluNurbsCallback()).
 This allows the user  to  cache  the  tessellated
       results  for  further  processing.   Specifies how a NURBS
       surface should  be  tessellated.   value  may  be  one  of
       GLU_PATH_LENGTH,   GLU_PARAMETRIC_ERROR,   GLU_DOMAIN_DISTANCE,
 GLU_OBJECT_PATH_LENGTH_EXT, or  GLU_OBJECT_PARAMETRIC_ERROR_EXT.
 When set to GLU_PATH_LENGTH, the surface is
       rendered so that the maximum length,  in  pixels,  of  the
       edges of the tessellation polygons is no greater than what
       is specified by GLU_SAMPLING_TOLERANCE.

              GLU_PARAMETRIC_ERROR specifies that the surface  is
              rendered  in such a way that the value specified by
              GLU_PARAMETRIC_TOLERANCE describes the maximum distance,
 in pixels, between the tessellation polygons
              and the surfaces they approximate.

              GLU_DOMAIN_DISTANCE allows  users  to  specify,  in
              parametric  coordinates, how many sample points per
              unit length are taken in u, v direction.

              GLU_OBJECT_PATH_LENGTH_EXT    is     similar     to
              GLU_PATH_LENGTH except that it is view independent,
              that is, the surface is rendered so that the  maximum
  length,  in object space, of edges of the tessellation
 polygons is no greater than what is specified
 by GLU_SAMPLING_TOLERANCE.

              GLU_OBJECT_PARAMETRIC_ERROR_EXT   is   similar   to
              GLU_PARAMETRIC_ERROR except that it is  view  independent,
 that is, the surface is rendered in such a
              way that the value specified by GLU_PARAMETRIC_TOLERANCE
  describes  the  maximum distance, in object
              space, between the tessellation  polygons  and  the
              surfaces they approximate.

              The   initial   value   of  GLU_SAMPLING_METHOD  is
              GLU_PATH_LENGTH.  Specifies the maximum length,  in
              pixels  or in object space length unit, to use when
              the sampling method is set  to  GLU_PATH_LENGTH  or
              GLU_OBJECT_PATH_LENGTH_EXT.  The NURBS code is conservative
 when rendering a curve or surface, so the
              actual length can be somewhat shorter.  The initial
              value is 50.0 pixels.  Specifies the  maximum  distance,
 in pixels or in object space length unit, to
              use  when  the  sampling  method  is   GLU_PARAMETRIC_ERROR
  or  GLU_OBJECT_PARAMETRIC_ERROR_EXT. The
              initial value is 0.5.  Specifies the number of sample
  points  per unit length taken along the u axis
              in  parametric  coordinates.  It  is  needed   when
              GLU_SAMPLING_METHOD  is set to GLU_DOMAIN_DISTANCE.
              The initial value is 100.  Specifies the number  of
              sample  points  per  unit  length taken along the v
              axis in parametric coordinate. It  is  needed  when
              GLU_SAMPLING_METHOD  is set to GLU_DOMAIN_DISTANCE.
              The initial value is 100.   value  can  be  set  to
              GLU_OUTLINE_POLYGON,    GLU_FILL,    or    GLU_OUTLINE_PATCH.
 When GLU_NURBS_MODE_EXT is  set  to  be
              GLU_NURBS_RENDERER_EXT,  value  defines how a NURBS
              surface should be rendered. When value  is  set  to
              GLU_FILL, the surface is rendered as a set of polygons.
 When value is set to GLU_OUTLINE_POLYGON, the
              NURBS  library draws only the outlines of the polygons
 created by tessellation.  When value is set to
              GLU_OUTLINE_PATCH  just the outlines of patches and
              trim curves defined by the user are drawn.

              When GLU_NURBS_MODE_EXT is set to be GLU_NURBS_TESSELLATOR_EXT,
  value  defines  how  a NURBS surface
              should be tessellated. When GLU_DISPLAY_MODE is set
              to  GLU_FILL or GLU_OUTLINE_POLY, the NURBS surface
              is  tessellated  into  openGL  triangle  primitives
              which  can be retrieved back through callback functions.
  If  GLU_DISPLAY_MODE  is  set  to  GLU_OUTLINE_PATCH,
  only  the  outlines of the patches and
              trim curves are generated as  a  sequence  of  line
              strips which can be retrieved back through callback
              functions.

              The initial value is GLU_FILL.  value is a  boolean
              value  that,  when set to GL_TRUE, indicates that a
              NURBS curve should be discarded prior to  tessellation
  if its control points lie outside the current
              viewport. The initial value is GL_FALSE.  value  is
              a  boolean  value.  When  set to GL_TRUE, the NURBS
              code downloads the projection matrix, the modelview
              matrix, and the viewport from the GL server to compute
 sampling and culling matrices for  each  NURBS
              curve that is rendered. Sampling and culling matrices
 are required to determine the tessellation of a
              NURBS surface into line segments or polygons and to
              cull a NURBS surface if it lies outside  the  viewport.


              If  this  mode is set to GL_FALSE, then the program
              needs to provide a projection matrix,  a  modelview
              matrix,  and  a  viewport for the NURBS renderer to
              use to construct  sampling  and  culling  matrices.
              This can be done with the gluLoadSamplingMatrices()
              function.  This mode is initially set  to  GL_TRUE.
              Changing  it  from  GL_TRUE  to  GL_FALSE  does not
              affect the sampling and culling matrices until gluLoadSamplingMatrices()
 is called.

NOTES    [Toc]    [Back]

       If  GLU_AUTO_LOAD_MATRIX is true, sampling and culling may
       be executed incorrectly if  NURBS  routines  are  compiled
       into a display list.

       A    property    of   GLU_PARAMETRIC_TOLERANCE,   GLU_SAMPLING_METHOD,
 GLU_U_STEP, or GLU_V_STEP,  or  a  value  of
       GLU_PATH_LENGTH, GLU_PARAMETRIC_ERROR, GLU_DOMAIN_DISTANCE
       are only available if the GLU version is 1.1  or  greater.
       They are not valid parameters in GLU 1.0.

       gluGetString() can be used to determine the GLU version.

SEE ALSO    [Toc]    [Back]

      
      
       gluGetNurbsProperty(3),        gluLoadSamplingMatrices(3),
       gluNewNurbsRenderer(3),   gluGetString(3),   gluNurbsCallback(3)



                                               gluNurbsProperty()
[ Back ]
 Similar pages
Name OS Title
glugetnurbsproperty IRIX get a NURBS property
gluGetNurbsProperty Tru64 get a NURBS property
setnurbsproperty IRIX sets a property for the display of trimmed NURBS surfaces
getnurbsproperty IRIX returns the current value of a trimmed NURBS surfaces display property
xprop Tru64 property displayer for X
xprop IRIX property displayer for X
tt_spec_bprop HP-UX retrieve the ith value of a property
glutessproperty IRIX set a tessellation object property
gluGetTessProperty Tru64 get a tessellation object property
tt_spec_prop_set HP-UX replace property values
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service