gluTessVertex

Aus DGL Wiki
Version vom 5. Dezember 2005, 21:18 Uhr von DGLBot (Diskussion | Beiträge) (GluTessVertex wurde nach gluTessVertex verschoben)

Wechseln zu: Navigation, Suche

gluTessVertex


Name

gluTessVertex - spezifiziert einen Eckpunkt eines Polygones.


Delphi-Spezifikation

procedure gluTessVertex(tess: PGLUtesselator; coords: TGLArrayd3; data: Pointer);


Parameter

tess Bestimmt das Tesselierungsobjekt (erstellt mit gluNewTess).
v Bestimmt die Position des Eckpunkts im Raum.
data Ein Zeiger, der auf die Daten zeigt die dem User über den Vertex-Callback (in gluTessCallBack angegeben) zurückgegeben werden.


Beschreibung

gluTessVertex beschreibt einen Eckpunkt (Vertex) eines Polygons, welches der User definiert.
Mehrfache Aufrufe von gluTessVertex beschreiben eine geschlossene Kontur.
Wenn der User zum Beispiel ein Viereck definieren will, muss gluTessVertex vier mal aufgerufen werden.
gluTessVertex kann nur innerhalb eines gluTessBeginContour-gluTessEndContour-Blocks aufgerufen werden.

data zeigt normalerweise auf eine Datenstruktur welche die Vertexposition und andere per-Vertex Eigenschaften wie Farbe und Normale enthält. Dieser Pointer wird mittels des GLU_VERTEX Callback nach der Tesselierung an den User zurückgeliefert. (siehe gluTessCallback)



Beispiel

Ein Viereck mit einem dreieckigen Loch könnte folgendermaßen beschrieben werden:

gluTessBeginPolygon(tess, NULL);
  gluTessBeginContour(tess);
    gluTessVertex(tess, v1, v1);
    gluTessVertex(tess, v2, v2);
    gluTessVertex(tess, v3, v3);
    gluTessVertex(tess, v4, v4);
  gluTessEndContour(tess); 
gluNextContour(tess, GLU_INTERIOR);
  gluTessBeginContour(tess);
    gluTessVertex(tess, v5, v5);
    gluTessVertex(tess, v6, v6);
    gluTessVertex(tess, v7, v7); 
  gluTessEndContour(tess);
gluTessEndPolygon(tess);


Siehe auch

gluTessBeginPolygon, gluNewTess, gluTessCallback, gluTessBeginContour, gluTessProperty, gluTessNormal

Hintergrundwissen: Tesselierung, Callback