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 Funktion gluNurbsCurve definiert die Form einer nicht uniformen rationalen B-Spline-Kurve (NURBS).
Syntax
void WINAPI gluNurbsCurve(
GLUnurbs *nobj,
GLint nknots,
GLfloat *knot,
GLint stride,
GLfloat *ctlarray,
GLint order,
GLenum type
);
Parameter
-
nobj
-
Das NURBS-Objekt (erstellt mit gluNewNurbsRenderer).
-
nknots
-
Die Anzahl der Knoten im Knoten. Der nknots-Parameter entspricht der Anzahl der Kontrollpunkte plus der Reihenfolge.
-
Knoten
-
Ein Array von nknots-Knotenwerten , die nicht dekrementiert werden.
-
Schritt
-
Der Offset (als Anzahl von Gleitkommawerten mit einfacher Genauigkeit) zwischen aufeinander folgenden Kurvensteuerungspunkten.
-
ctlarray
-
Ein Zeiger auf ein Array von Kontrollpunkten. Die Koordinaten müssen mit dem Typ übereinstimmen.
-
order
-
Die Reihenfolge der NURBS-Kurve. Der Order-Parameter ist gleich grad + 1; Daher hat eine kubische Kurve eine Reihenfolge von 4.
-
type
-
Der Typ der Kurve. Wenn diese Kurve innerhalb eines gluBeginCurve/gluEndCurve-Paars definiert ist, kann der Typ einer der gültigen eindimensionalen Evaluatortypen sein (z. B. GL_MAP1_VERTEX_3 oder GL_MAP1_COLOR_4). Zwischen einem gluBeginTrim/gluEndTrim-Paar sind die einzigen gültigen Typen GLU_MAP1_TRIM_2 und GLU_MAP1_TRIM_3.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Bemerkungen
Wenn gluNurbsCurve zwischen einem gluBeginCurve/gluEndCurve-Paar angezeigt wird, beschreibt dies eine zu renderde Kurve. Sie ordnen Positions-, Textur- und Farbkoordinaten zu, indem Sie jede als separate gluNurbsCurve zwischen einem gluBeginCurve/gluEndCurve-Paar darstellen. Führen Sie nicht mehr als einen Aufruf von gluNurbsCurve für Farb-, Positions- und Texturdaten innerhalb eines einzelnen gluBeginCurve/gluEndCurve-Paars durch. Führen Sie genau einen Aufruf aus, um die Position der Kurve (eine Art von GL_MAP1_VERTEX_3 oder GL_MAP1_VERTEX_4) zu beschreiben.
Wenn gluNurbsCurve zwischen einem gluBeginTrim/gluEndTrim-Paar angezeigt wird, beschreibt es eine Trimmkurve auf einer NURBS-Oberfläche. Wenn type GLU_MAP1_TRIM_2 ist, beschreibt er eine Kurve im zweidimensionalen Parameterraum (u und v). Wenn es GLU_MAP1_TRIM_3 ist, beschreibt es eine Kurve im zweidimensionalen homogenen Parameterraum (u, v und w). Weitere Informationen zum Kürzen von Kurven finden Sie unter gluBeginTrim.
Beispiele
Die folgenden Funktionen rendern eine texturierte NURBS-Kurve mit Normaldaten:
gluBeginCurve(nobj);
gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2);
gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL);
gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);
gluEndCurve(nobj);
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 |
|