Freigeben über


gluNurbsProperty-Funktion

Die Funktion gluNurbsProperty legt eine Non-Uniform Rational B-Spline (NURBS)-Eigenschaft fest.

Syntax

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

Parameter

nobj

Das NURBS-Objekt (erstellt mit gluNewNurbsRenderer).

property

Die festzulegende Eigenschaft. Folgende Werte sind gültig:

Wert Bedeutung
GLU_SAMPLING_TOLERANCE
Gibt die maximale Länge in Pixel an, die verwendet werden soll, wenn die Samplingmethode auf GLU_PATH_LENGTH festgelegt ist. Der Standardwert ist 50,0 Pixel.
GLU_DISPLAY_MODE
Der Wertparameter definiert, wie eine NURBS-Oberfläche gerendert werden soll. Sie können den Wert auf GLU_FILL, GLU_OUTLINE_POLYGON oder GLU_OUTLINE_PATCH festlegen.
GLU_FILL. Die Oberfläche wird als Gruppe von Polygonen gerendert. Dies ist der Standardwert.
GLU_OUTLINE_POLYGON. Die NURBS-Bibliothek zeichnet nur die Umrisse der durch tessellation erstellten Polygone.
GLU_OUTLINE_PATCH. Es werden nur die Vom Benutzer definierten Umrisse von Patches und Trimmkurven gezeichnet.
GLU_CULLING
Der Wertparameter ist ein boolescher Wert. Wenn der Wert auf GL_TRUE festgelegt ist, werden NURBS-Kurven, deren Kontrollpunkte außerhalb des aktuellen Viewports liegen, vor der Tessellation verworfen. Der Standardwert ist GL_FALSE (da eine NURBS-Kurve nicht vollständig in den konvexen Rumpf ihrer Kontrollpunkte fallen kann).
GLU_AUTO_LOAD_MATRIX
Der Wertparameter ist ein boolescher Wert. Wenn er auf GL_TRUE festgelegt ist, lädt der NURBS-Code die Projektionsmatrix, die Modellansichtsmatrix und den Viewport vom OpenGL-Server herunter, um Stichproben- und Cullingmatrizen für jede gerenderte NURBS-Kurve zu berechnen. Stichproben- und Kullingmatrizen sind erforderlich, um die Tessellation einer NURBS-Oberfläche in Liniensegmente oder Polygone zu bestimmen und eine NURBS-Oberfläche zu ullieren, wenn sie außerhalb des Viewports liegt.
Wenn dieser Modus auf GL_FALSE festgelegt ist, müssen Sie eine Projektionsmatrix, Eine Modellansichtsmatrix und einen Viewport für den NURBS-Renderer bereitstellen, um Stichproben- und Cullingmatrizen zu erstellen. Dies ist mit der Funktion gluLoadSamplingMatrices möglich.
Der Standardwert für diesen Modus ist GL_TRUE. Das Ändern dieses Modus von GL_TRUE zu GL_FALSE wirkt sich erst dann auf die Stichproben- und Culling-Matrizen aus, wenn Sie gluLoadSamplingMatrices aufrufen.
Die folgenden Eigenschaftenparameter werden in GLU-Version 1.1 oder höher unterstützt und sind für GLU-Version 1.0 nicht gültig: GLU_PARAMETRIC_TOLERANCE, GLU_SAMPLING_METHOD, GLU_U_STEP und GLU_V_STEP.
Die folgenden Wertparameter werden in GLU-Version 1.1 oder höher unterstützt und sind für GLU-Version 1.0 nicht gültig: GLU_PATH_LENGTH, GLU_PARAMETRIC_ERROR und GLU_DOMAIN_DISTANCE.
GLU_PARAMETRIC_TOLERANCE
Gibt den maximalen Abstand in Pixel an, der verwendet werden soll, wenn die Samplingmethode auf GLU_PARAMETRIC_ERROR festgelegt ist. Der Standardwert ist 0,5.
GLU_SAMPLING_METHOD
Gibt an, wie eine NURBS-Oberfläche tessallateiert wird. GLU_SAMPLING_METHOD kann einen der folgenden drei Werte aufweisen.
GLU_PATH_LENGTH. Der Standardwert. Gibt an, dass Flächen, die mit der maximalen Länge der Kanten der Tessellation-Polygone gerendert werden, nicht größer als der durch GLU_SAMPLING_TOLERANCE angegebene Wert sind.
GLU_PARAMETRIC_ERROR. Gibt an, dass der Wert von GLU_PARAMETRIC_TOLERANCE beim Rendern der Oberfläche den maximalen Abstand (in Pixel) zwischen den Tessellationspolygonen und den Oberflächen angibt, die sie annähern.
GLU_DOMAIN_DISTANCE. Gibt in parametrischen Koordinaten an, wie viele Stichprobenpunkte pro Länge der Einheit in den Dimensionen u und v berücksichtigt werden sollen.
GLU_U_STEP
Gibt die Anzahl der Stichprobenpunkte pro Länge der Einheit an, die entlang der u-Dimension in parametrischen Koordinaten genommen wird. Der Wert von GLU_U_STEP wird verwendet, wenn GLU_SAMPLING_METHOD auf GLU_DOMAIN_DISTANCE festgelegt ist. Der Standardwert ist 100.
GLU_V_STEP
Gibt die Anzahl der Stichprobenpunkte pro Länge der Einheit an, die entlang der v-Dimension in parametrischen Koordinaten genommen wird. Der Wert von GLU_V_STEP wird verwendet, wenn GLU_SAMPLING_METHOD auf GLU_DOMAIN_DISTANCE festgelegt ist. Der Standardwert ist 100.

value

Der Wert, auf den die angegebene Eigenschaft festgelegt werden soll. Der Wertparameter kann ein numerischer Wert oder einer der folgenden drei Werte sein: GLU_PATH_LENGTH, GLU_PARAMETRIC_ERROR oder GLU_DOMAIN_DISTANCE.

Wert Bedeutung
GLU_PATH_LENGTH
Der Standardwert. Gibt an, dass Flächen, die mit der maximalen Länge der Kanten der Tessellation-Polygone gerendert werden, nicht größer als der durch GLU_SAMPLING_TOLERANCE angegebene Wert sind.
GLU_PARAMETRIC_ERROR
Gibt an, dass der Wert von GLU_PARAMETRIC_TOLERANCE beim Rendern der Oberfläche den maximalen Abstand (in Pixel) zwischen den Tessellationspolygonen und den Oberflächen angibt, die sie annähern.
GLU_DOMAIN_DISTANCE
Gibt in parametrischen Koordinaten an, wie viele Stichprobenpunkte pro Länge der Einheit in den Dimensionen u und v berücksichtigt werden sollen.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Bemerkungen

Verwenden Sie gluNurbsProperty , um eigenschaften zu steuern, die in einem NURBS-Objekt gespeichert sind. Diese Eigenschaften wirken sich auf die Art und Weise aus, wie eine NURBS-Kurve gerendert wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Glu.h
Bibliothek
Glu32.lib
DLL
Glu32.dll

Siehe auch

gluGetNurbsProperty

gluGetString

gluLoadSamplingMatrices

gluNewNurbsRenderer