Bezeichnung
gl.Begin -- begrenzt die Scheitelpunkte eines Grundelements oder einer Gruppe ähnlicher Grundelemente
Übersicht
gl.Begin(mode)
Beschreibung
gl.Begin() und gl.End() begrenzen die Scheitelpunkte, die ein Grundelement oder eine Gruppe ähnlicher Grundelemente definieren. gl.Begin() akzeptiert ein einzelnes Argument, das angibt, auf welche der zehn Arten die Scheitelpunkte interpretiert werden. Wenn wir n als eine ganze Zahl beginnend bei eins und N als die Gesamtzahl der angegebenen Scheitelpunkte nehmen, sind die Interpretationen wie folgt:

#GL_POINTS
Behandelt jeden Scheitelpunkt als einen einzelnen Punkt. Scheitel n definiert Punkt n. n Punkte werden gezeichnet.

#GL_LINES
Behandelt jedes Scheitelpunktpaar als unabhängiges Liniensegment. Die Scheitelpunkte 2^n - 1 und 2^n definieren die Linie n. N/2 Linien werden gezeichnet.

#GL_LINE_STRIP
Zeichnet eine verbundene Gruppe von Liniensegmenten vom ersten zum letzten Punkt. Die Scheitelpunkte n und n + 1 definieren die Linie n. N - 1 Linien werden gezeichnet.

#GL_LINE_LOOP
Zeichnet eine verbundene Gruppe von Liniensegmenten vom ersten Punkt zum letzten und dann zurück zum ersten. Die Scheitelpunkte n und n + 1 definieren die Linie n. Die letzte Linie wird jedoch durch die Scheitelpunkte N und 1 definiert. N Linien werden gezeichnet.

#GL_TRIANGLES
Behandelt alle drei Scheitelpunkte als unabhängiges Dreieck. Die Scheitel 3^n - 2, 3^n - 1 und 3^n definieren das Dreieck n. N/3 Dreiecke werden gezeichnet.

#GL_TRIANGLE_STRIP
Zeichnet eine verbundene Gruppe von Dreiecken. Ein Dreieck ist für jeden Scheitelpunkt definiert, der nach den ersten beiden Scheitelpunkten dargestellt wird. Ungerade n, Scheitel n, n + 1 und n + 2 definieren das Dreieck n. Für gerade n definieren die Scheitelpunkte n + 1, n und n + 2 das Dreieck n. N - 2 Dreiecke werden gezeichnet.

#GL_TRIANGLE_FAN
Zeichnet eine verbundene Gruppe von Dreiecken. Ein Dreieck ist für jeden Scheitelpunkt definiert, der nach den ersten beiden Scheitelpunkten dargestellt wird. Die Scheitelpunkte 1, n + 1 und n + 2 definieren das Dreieck n. N - 2 Dreiecke werden gezeichnet.

#GL_QUADS
Behandelt jede Gruppe von vier Scheitelpunkte als unabhängiges Viereck. Die Scheitel 4^n - 3, 4^n - 2, 4^n - 1 und 4^n definieren das Viereck n. N/4 Vierecke werden gezeichnet.

#GL_QUAD_STRIP
Zeichnet eine verbundene Gruppe von Vierecken. Ein Viereck ist für jedes Paar von Scheitelpunkten definiert, die nach dem ersten Paar dargestellt werden. Die Scheitelpunkte 2^n - 1, 2^n, 2^n + 2 und 2^n + 1 definieren das Viereck n. N/2 - 1 Vierecke werden gezeichnet. Beachten Sie, dass sich die Reihenfolge der Eckpunkte, um ein Viereck aus Reihendaten zu konstruieren, von derjenigen unterscheidet, die bei unabhängigen Daten verwendet wird.

#GL_POLYGON
Zeichnet ein einzelnes, konvexes Polygon. Die Scheitelpunkte 1 bis N definieren dieses Polygon.

Nur eine Teilmenge der GL-Befehle kann zwischen gl.Begin() und gl.End() verwendet werden. Die Befehle sind gl.Vertex(), gl.Color(), gl.Index(), gl.Normal(), gl.TexCoord(), gl.Material(), gl.EvalCoord(), gl. EvalPoint(), gl.EdgeFlag() und gl.ArrayElement(). Es ist auch möglich, gl.CallList() oder gl.CallLists() zu verwenden, um Display-Listen auszuführen, die nur die vorhergehenden Befehle enthalten. Wenn ein anderer GL-Befehl zwischen gl.Begin() und gl.End() ausgeführt wird, wird das Fehler-Flag gesetzt und der Befehl ignoriert.

Unabhängig von dem für den Modus gewählten Wert gibt es keine Begrenzung für die Anzahl der Scheitelpunkte, die zwischen gl.Begin() und gl.End() definiert werden können. Unvollständig angegebene Linien, Dreiecke, Vierecke und Polygone werden nicht gezeichnet. Unvollständige Angaben ergeben sich, wenn entweder zu wenige Scheitelpunkte bereitgestellt werden, um ein einzelnes Grundelement zu definieren oder wenn ein falsches Vielfaches von Scheitelpunkten angeben ist. Das unvollständige Grundelement wird ignoriert; der Rest wird gezeichnet.

Die Mindestangabe der Scheitelpunkte für jedes Grundelement lautet wie folgt: 1 für einen Punkt, 2 für eine Linie, 3 für ein Dreieck, 4 für ein Viereck und 3 für ein Polygon. Modi, die ein bestimmtes Vielfaches von Scheitelpunkten benötigen, sind #GL_LINES (2), #GL_TRIANGLES (3), #GL_QUADS (4) und #GL_QUAD_STRIP (2).

Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.

Eingaben
mode
Gibt das Grundelement oder die Grundelemente an, die aus den Scheiteln zwischen gl.Begin() und dem nachfolgenden gl.End() erzeugt werden (siehe oben)
Fehler
#GL_INVALID_ENUM wird generiert, wenn mode auf einen nicht gültigen Wert gesetzt ist.

#GL_INVALID_OPERATION wird generiert, wenn gl.Begin() zwischen gl.Begin() und gl.End() ausgeführt wird.

#GL_INVALID_OPERATION wird generiert, wenn gl.End() ohne vorangestelltes glBegin ausgeführt wird.

#GL_INVALID_OPERATION wird generiert, wenn zwischen gl.Begin() und gl.End() ein nicht unterstützter Befehl ausgeführt wird. In Ihrem OpenGL-Referenzhandbuch finden Sie Befehle, die zwischen gl.Begin() und gl.End() ausgeführt werden können.


Navigation zeigen