Verwenden von NURBS-Kurven und -Oberflächen
Non-Uniform Rational B-Spline -Funktionen (NURBS) bieten allgemeine und leistungsstarke Beschreibungen von Kurven und Oberflächen in zwei und drei Dimensionen, die die Kurven und Oberflächen in OpenGL-Auswertungen konvertieren. Die NURBS-Funktionen können die Geometrie in vielen computergestützten, maschinellen Entwurfssystemen darstellen. Sie können Kurven und Oberflächen in einer Vielzahl von Stilen rendern und automatisch adaptive Unterteilungen verarbeiten, die die Domäne in kleinere Dreiecke in Regionen mit hoher Krümmung und in der Nähe von Kanten mosaiken. NURBS-Funktionen fallen in die folgenden Kategorien.
Verwenden Sie zum Verwalten eines NURBS-Objekts:
- gluNewNurbsRenderer (Erstellen eines NURBS-Objekts)
- gluDeleteNurbsRenderer (löscht ein NURBS-Objekt)
- gluNurbsCallback (richtet eine Fehlerbehandlungsfunktion ein)
Verwenden Sie Folgendes, um die gewünschten Kurven anzugeben:
Verwenden Sie Folgendes, um die gewünschten Oberflächen anzugeben:
Sie können auch einen Kürzungsbereich angeben, der eine Teilmenge der zu bewertenden NURBS-Oberflächendomäne definiert, sodass Sie Oberflächen erstellen können, die über weiche Grenzen verfügen oder Lücken enthalten.
Verwenden Sie Folgendes, um den Kürzungsbereich anzugeben:
Wie bei quadrierten Objekten können Sie steuern, wie NURBS-Kurven und -Oberflächen gerendert werden. Sie können Dies bestimmen:
- Gibt an, ob eine Kurve oder Oberfläche verworfen werden soll, deren Steuerungspolyhedron außerhalb des aktuellen Viewports liegt.
- Die maximale Länge (in Pixel) der Kanten von Polygonen, die zum Rendern von Kurven und Oberflächen verwendet werden.
- Unabhängig davon, ob Sie die Projektionsmatrix, die Modellansichtsmatrix und den Viewport vom OpenGL-Server verwenden oder diese mit gluLoadSamplingMatrices verwenden.
Verwenden Sie gluNurbsProperty, um diese Eigenschaften oder die Standardwerte zu verwenden. Sie können ein NURBS-Objekt über seinen Renderingstil mit gluGetNurbsProperty abfragen.