glBegin, fonction

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

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. Voici les constantes symboliques acceptées et leurs significations :

Valeur Signification
GL_POINTS
Traite chaque vertex comme un point unique. Vertex n définit le point n. Les points N sont dessinés.
GL_LINES
Traite chaque paire de sommets comme un segment de ligne indépendant. Sommets 2n - 1 et 2n définissent la ligne n. Les lignes N/2 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 revenez au premier. Sommets n et n + 1 définir la ligne n. Toutefois, la dernière ligne est définie par les sommets N et 1. Les lignes N sont dessinées.
GL_TRIANGLES
Traite chaque triplet de sommets comme un triangle indépendant. Sommets 3n - 2, 3n - 1 et 3n définissent le triangle n. Les triangles N/3 sont dessinés.
GL_TRIANGLE_STRIP
Dessine un groupe connecté de triangles. Un triangle est défini pour chaque vertex présenté après les deux premiers sommets. Pour le n impair, les sommets n, n + 1 et n + 2 définissent le triangle n. Pour même n, 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. Sommets 1, n + 1, n + 2 définir le triangle n. N - 2 triangles sont dessinés.
GL_QUADS
Traite chaque groupe de quatre sommets comme un quadrilateral indépendant. Sommets 4n - 3, 4n - 2, 4n - 1 et 4n définissent le quadrilateral n. Les quadrilataux N/4 sont dessinés.
GL_QUAD_STRIP
Dessine un groupe connecté de quadrilatères. Un quadrilateral est défini pour chaque paire de sommets présenté après la première paire. Sommets 2n - 1, 2n, 2n+ 2 et 2n + 1 définissent le quadrilateral n. N/2 - 1 quadrilaterals sont dessinés. Notez que l’ordre dans lequel les sommets sont utilisés pour construire un quadrilateral à partir de données de bande est différent de celui utilisé avec des données indépendantes.
GL_POLYGON
Dessine un polygone convex 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,glEdgeFlag, glEdgeFlag, glCallList ou glCallLists a été appelée entre glBegin et le glend correspondant. La fonction glend a été appelée avant que le glBegin correspondant soit appelé, ou glBegin a été appelé dans une séquence glBeginglend/.

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 seul argument qui spécifie lequel de 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 ne pouvez utiliser qu’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, il n’existe aucune limite au nombre de sommets que vous pouvez définir entre glBegin et glend. Les lignes, les triangles, les quadrilataires et les polygones qui sont incomplets spécifiés ne sont pas dessinés. Résultats de spécification incomplets lorsque trop de sommets sont fournis pour spécifier même une seule primitive ou lorsqu’un multiple 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 la suivante :

    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 nombre de vertex 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