Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die gluNurbsSurface-Funktion definiert die Form einer Nicht-Uniform Rational B-Spline (NURBS)-Oberfläche.
Syntax
void WINAPI gluNurbsSurface(
GLUnurbs *nobj,
GLint sknot_count,
float *sknot,
GLint tknot_count,
GLfloat *tknot,
GLint s_stride,
GLint t_stride,
GLfloat *ctlarray,
GLint sorder,
GLint torder,
GLenum type
);
Parameter
-
nobj
-
Das NURBS-Objekt (erstellt mit gluNewNurbsRenderer).
-
sknot_count
-
Die Anzahl der Knoten in parametrischer u-Richtung .
-
sknot
-
Ein Array von sknot_count nicht verknüpfenden Knotenwerten in parametrischer u-Richtung .
-
tknot_count
-
Die Anzahl der Knoten in parametrischer v-Richtung .
-
tknot
-
Ein Array von tknot_count nicht dekrementierende Knotenwerte in parametrischer v-Richtung .
-
s_stride
-
Der Offset (als Anzahl einzelner Genauigkeitsfloatingpunktwerte) zwischen aufeinander folgenden Kontrollpunkten in parametrischer u-Richtung in Ctlarray.
-
t_stride
-
Der Offset (in einzelnen Genauigkeitsfloatingpunktwerten) zwischen aufeinander folgenden Kontrollpunkten in parametrischer v-Richtung in ctlarray.
-
ctlarray
-
Ein Array, das Steuerungspunkte für die NURBS-Oberfläche enthält. Die Offsets zwischen aufeinander folgenden Kontrollpunkten in den parametrischen u - und v-Richtungen werden durch s_stride und t_stride angegeben.
-
Sorder
-
Die Reihenfolge der NURBS-Oberfläche in parametrischer u-Richtung . Die Reihenfolge ist um eins mehr als der Grad, daher hat eine Fläche, die kubisch in u ist, eine u-Ordnung von 4.
-
torder
-
Die Reihenfolge der NURBS-Oberfläche in parametrischer v-Richtung . Die Reihenfolge ist um eins mehr als der Grad, daher hat eine Fläche, die in v kubisch ist, eine v-Ordnung von 4.
-
type
-
Der Typ der Oberfläche. Der Type-Parameter kann jeder der gültigen zweidimensionalen Evaluatortypen sein (z. B. GL_MAP2_VERTEX_3 oder GL_MAP2_COLOR_4).
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Bemerkungen
Verwenden Sie gluNurbsSurface innerhalb einer NURBS-Oberflächendefinition, um die Form einer NURBS-Oberfläche zu beschreiben (vor dem Kürzen). Um den Anfang einer NURBS-Oberflächendefinition zu markieren, verwenden Sie die Funktion gluBeginSurface . Um das Ende einer NURBS-Oberflächendefinition zu markieren, verwenden Sie die Funktion gluEndSurface . Rufen Sie gluNurbsSurface nur innerhalb einer NURBS-Oberflächendefinition auf.
Sie ordnen einer Oberfläche Positions-, Textur- und Farbkoordinaten zu, indem Sie jede als separates gluNurbsSurface zwischen einem gluBeginSurface/gluEndSurface-Paar darstellen. Innerhalb eines einzelnen gluBeginSurface/gluEndSurface-Paars können Sie nur einen Aufruf von gluNurbsSurface für Farb-, Positions- und Texturdaten ausführen. Führen Sie genau einen Aufruf aus, um die Position der Oberfläche (eine Art von GL_MAP2_VERTEX_3 oder GL_MAP2_VERTEX_4) zu beschreiben.
Sie können eine NURBS-Oberfläche mit den Funktionen gluNurbsCurve und gluPwlCurve zwischen Aufrufen von gluBeginTrim und gluEndTrim kürzen.
Eine gluNurbsSurface mit sknot_count Knoten in u-Richtung und tknot_count Knoten in v-Richtung mit order sorder und torder muss (sknot_count -sorder) multipied by (tknot_count -torder) Kontrollpunkte haben.
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
| Header |
|
| Bibliothek |
|
| DLL |
|