glBegin, fonction

Les fonctions glBegin et glend délimitent les sommets d’une primitive ou d’un groupe de primitives similaires.

Syntaxe

void WINAPI glBegin(
   GLenum mode
);

Paramètres

mode

Primitives ou primitives qui seront créées à partir de sommets présentés entre glBegin et le glend suivant. Les constantes symboliques acceptées et leur signification sont les suivantes :

Valeur Signification
GL_POINTS
Traite chaque sommet comme un point unique. Le vertex n définit le point n. N points sont tirés.
GL_LINES
Traite chaque paire de sommets comme un segment de ligne indépendant. Les sommets 2n - 1 et 2n définissent la ligne n. N/2 lignes sont dessinées.
GL_LINE_STRIP
Dessine un groupe connecté de segments de ligne du premier sommet au dernier. Les sommets n et n+1 définissent la ligne n. N - 1 lignes sont dessinées.
GL_LINE_LOOP
Dessine un groupe connecté de segments de ligne du premier sommet au dernier, puis revient au premier. Les sommets n et n + 1 définissent la ligne n. Toutefois, la dernière ligne est définie par les sommets N et 1. N lignes sont dessinées.
GL_TRIANGLES
Traite chaque triplet de sommets comme un triangle indépendant. Les sommets 3n - 2, 3n - 1 et 3n définissent le triangle n. N/3 triangles sont dessinés.
GL_TRIANGLE_STRIP
Dessine un groupe connecté de triangles. Un triangle est défini pour chaque sommet présenté après les deux premiers sommets. Pour n impair, les sommets n, n + 1 et n + 2 définissent le triangle n. Pour n pair, les sommets n + 1, n et n + 2 définissent le triangle n. N - 2 triangles sont dessinés.
GL_TRIANGLE_FAN
Dessine un groupe connecté de triangles. un triangle est défini pour chaque sommet présenté après les deux premiers sommets. Les sommets 1, n + 1, n + 2 définissent le triangle n. N - 2 triangles sont dessinés.
GL_QUADS
Traite chaque groupe de quatre sommets comme un quadrilatère indépendant. Les sommets 4n - 3, 4n - 2, 4n - 1 et 4n définissent le quadrilatère n. N/4 quadrilatères sont dessinés.
GL_QUAD_STRIP
Dessine un groupe connecté de quadrilatères. Un quadrilatère est défini pour chaque paire de sommets présentés après la première paire. Les sommets 2n - 1, 2n, 2n + 2 et 2n + 1 définissent le quadrilatère n. N/2 - 1 quadrilatères sont dessinés. Notez que l’ordre dans lequel les sommets sont utilisés pour construire un quadrilatère à partir de données de bande est différent de celui utilisé avec les données indépendantes.
GL_POLYGON
Dessine un polygone convexe unique. Les sommets 1 à N définissent ce polygone.

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Codes d’erreur

Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .

Nom Signification
GL_INVALID_ENUM
le mode a été défini sur une valeur non acceptées.
GL_INVALID_OPERATION
Une fonction autre que glVertex, glColor, glIndex, glNormal, glTexCoord, glEvalCoord, glEvalPoint, glMaterial, glEdgeFlag, glCallList ou glCallLists a été appelée entre glBegin et le glend correspondant. La fonction glend a été appelée avant l’appel du glBegin correspondant, ou glBegin a été appelé dans une séquence glBegin/glend .

Notes

Les fonctions glBegin et glend délimitent les sommets qui définissent une primitive ou un groupe de primitives similaires. La fonction glBegin accepte un argument unique qui spécifie laquelle des dix primitives composent les sommets. En prenant n comme nombre entier commençant à un et N comme nombre total de sommets spécifiés, les interprétations sont les suivantes :

  • Vous pouvez utiliser uniquement un sous-ensemble de fonctions OpenGL entre glBegin et glend. Les fonctions que vous pouvez utiliser sont les suivantes :

    glVertex

    glColor

    glIndex

    glNormal

    glTexCoord

    glEvalCoord

    glEvalPoint

    glMaterial

    glEdgeFlag

    Vous pouvez également utiliser glCallList ou glCallLists pour exécuter des listes d’affichage qui incluent uniquement les fonctions précédentes. Si une autre fonction OpenGL est appelée entre glBegin et glend, l’indicateur d’erreur est défini et la fonction est ignorée.

  • Quelle que soit la valeur choisie pour le mode dans glBegin, le nombre de sommets que vous pouvez définir entre glBegin et glendn’est pas limité. Les lignes, les triangles, les quadrilatères et les polygones qui ne sont pas spécifiés de manière incomplète ne sont pas dessinés. La spécification est incomplète lorsque trop peu de sommets sont fournis pour spécifier même une seule primitive ou lorsqu’un nombre incorrect de sommets est spécifié. La primitive incomplète est ignorée ; les primitives complètes sont dessinées.

  • La spécification minimale des sommets pour chaque primitive est :

    Nombre minimal de sommets Type de primitive
    1 point
    2 line
    3 triangle
    4 Quadrilatère
    3 polygon
  • Les modes qui nécessitent un certain multiple de sommets sont GL_LINES (2), GL_TRIANGLES (3), GL_QUADS (4) et GL_QUAD_STRIP (2).

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Gl.h
Bibliothèque
Opengl32.lib
DLL
Opengl32.dll

Voir aussi

glCallList

glCallLists

glColor

glEdgeFlag

glEnd

glEvalCoord

glEvalPoint

glIndex

glMaterial

glNormal

glTexCoord

glVertex