table of contents
GLUNURBSPROPERTY(3G) | OpenGL Manual | GLUNURBSPROPERTY(3G) |
NAME¶
gluNurbsProperty - set a NURBS property
C SPECIFICATION¶
void gluNurbsProperty(GLUnurbs* nurb, GLenum property, GLfloat value);
PARAMETERS¶
nurb
property
value
DESCRIPTION¶
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:
GLU_NURBS_MODE
GLU_SAMPLING_METHOD
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 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 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.
GLU_SAMPLING_TOLERANCE
GLU_PARAMETRIC_TOLERANCE
GLU_U_STEP
GLU_V_STEP
GLU_DISPLAY_MODE
When GLU_NURBS_MODE is set to be GLU_NURBS_TESSELLATOR, value defines how a NURBS surface should be tessellated. When GLU_DISPLAY_MODE is set to GLU_FILL or GLU_OUTLINE_POLYGON, the NURBS surface is tessellated into OpenGL triangle primitives that 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 that can be retrieved back through callback functions.
The initial value is GLU_FILL.
GLU_CULLING
GLU_AUTO_LOAD_MATRIX
If this mode is set to GLU_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 GLU_TRUE. Changing it from GLU_TRUE to GLU_FALSE does not affect the sampling and culling matrices until gluLoadSamplingMatrices() is called.
NOTES¶
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.
GLU_NURBS_MODE is only available if the GLU version is 1.3 or greater.
The GLU_OBJECT_PATH_LENGTH and GLU_OBJECT_PARAMETRIC_ERROR values for the GLU_SAMPLING_METHOD property are only available if the GLU version is 1.3 or greater.
SEE ALSO¶
gluGetNurbsProperty(), gluGetString(), gluLoadSamplingMatrices(), gluNewNurbsRenderer(), gluNurbsCallback()
COPYRIGHT¶
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.
AUTHORS¶
opengl.org
04/12/2021 | opengl.org |