gluBeginSurface

Aus DGL Wiki
Version vom 22. April 2006, 19:25 Uhr von DGLBot (Diskussion | Beiträge) (Bot: konvertiere/korrigiere <BR>)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

gluBeginSurface, gluEndSurface

Name

gluBeginSurface, gluEndSurface - umschließen eine NURBS-Oberflächendefinition.


Delphi-Spezifikation

procedure gluBeginSurface(nobj: PGLUnurbs);
procedure gluEndSurface(nobj: PGLUnurbs);


Parameter

nobj Bestimmt ein NURBS Objekt. (Erstellt mit gluNewNurbsRenderer)



Beschreibung

Benutzen Sie gluBeginSurface um den Anfang einer NURBS-Oberflächendefinition zu markieren.
Nach dem Aufruf von gluBeginSurface können Sie keinen oder mehr Aufrufe von gluNurbsSurface ausführen um die Eigenschaften der Oberfläche zu definieren.
Genau einer dieser Aufrufe von gluNurbsSurface muss einen Oberflächentyp gleich GL_MAP2_VERTEX_3 oder GL_MAP2_VERTEX_4 haben.
Um das Ende der Oberflächendefinition zu markieren rufen Sie gluEndSurface auf. Das Schneiden von NURBS-Oberflächen wird via gluBeginTrim, gluPwlCurve, gluNurbsCurve und gluEndTrim unterstützt. Siehe gluBeginTrim für nähere Angaben.

OpenGL-Evaluatoren werden genutzt um die NURBS-Oberflächen als Satz von Polygonen zu rendern. Der Evaluatoren-Status wird während des Renderns mit glPushAttrib(GL_EVAL_BIT) gesichert und mit glPopAttrib wieder hergestellt. Siehe glPushAttrib um genau zu sehen welche States gesichert werden.


Beispiel

Die folgenden Befehle rendern eine texturierte NURBS-Oberfläche mit Normalen.
Die Texturcoordinaten und Normalen sind ebenfalls als NURBS-Oberfläche beschrieben:

gluBeginSurface(nobj);
   gluNurbsSurface(nobj, . . ., GL_MAP2_TEXTURE_COORD_2);
   gluNurbsSurface(nobj, . . ., GL_MAP2_NORMAL);
   gluNurbsSurface(nobj, . . ., GL_MAP2_VERTEX_4); 
gluEndSurface(nobj); 


Siehe auch

gluBeginCurve, gluBeginTrim, gluNewNurbsRenderer, gluNurbsCurve, gluNurbsSurface, gluPwlCurve

Hintergrundwissen: NURBS