gluTessVertex: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K
K (GluTessVertex wurde nach gluTessVertex verschoben)
(kein Unterschied)

Version vom 5. Dezember 2005, 21:18 Uhr

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