glEvalMesh2 fonction)

Calcule une grille à deux dimensions de points ou de lignes.

Syntaxe

void WINAPI glEvalMesh2(
   GLenum mode,
   GLint  i1,
   GLint  i2,
   GLint  j1,
   GLint  j2
);

Paramètres

mode

Valeur qui spécifie s’il faut calculer un maillage à deux dimensions de points, de lignes ou de polygones. Les constantes symboliques suivantes sont acceptées : _ point GL, _ ligne GL et _ remplissage GL.

I1

Première valeur entière pour la variable de domaine Grid i.

I2

Dernière valeur entière pour la variable de domaine Grid i.

j1

Première valeur entière pour la variable de domaine Grid j.

J2

Dernière valeur entière pour la variable de domaine Grid j.

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
_enum GL non valide _
Indique que le mode n’est pas une valeur acceptée.
_opération non valide du GL _
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd.

Notes

Utilisez glMapGrid et glEvalMesh en tandem pour générer et évaluer efficacement une série de valeurs de domaine de mappage uniformément espacées. La fonction glEvalMesh effectue un pas à pas dans le domaine entier d’une grille unidimensionnelle ou à deux dimensions, dont la plage est le domaine des mappages d’évaluation spécifiés par glMap1 et glMap2. Le paramètre mode détermine si les vertex résultants sont connectés en tant que points, lignes ou polygones pleins.

Dans le cas à deux dimensions, glEvalMesh2, Let

? u = (U2 U1)/n

? v = (V2 V1)/m,

où n, U1, U2, m, v1 et v2 sont les arguments de la fonction glMapGrid2 la plus récente. Ensuite, si le mode est _ remplissage GL, glEvalMesh2 est équivalent à :

pour (j = J1 ; j < J2 ; j + = 1)

{

glBegin( _ bande à quatre processeurs GL _ );

pour (i = I1 ; i <= i2 ; i + = 1)

{

glEvalCoord2(i ? u + U1 (), j ? v + v1);

glEvalCoord2(i ? u + U1 (), (j + 1) ? v + v1);

}

glEnd(); }

Si le mode est _ line GL, un appel à glEvalMesh2 est équivalent à :

pour (j = J1 ; j <= J2 ; j + = 1)

{

glBegin( _ bande de lignes GL _ );

pour (i = I1 ; i <= i2 ; i + = 1)

{

glEvalCoord2(i ? u + U1, j ? v + v1);

}

glEnd();

}

pour (i = I1 ; i <= i2 ; i + = 1)

{

glBegin( _ bande de lignes GL _ );

pour (j = J1 ; j <= J1 ; j + = 1)

{

glEvalCoord2(i ? u + U1, j ? v + v1);

}

glEnd( );

}

Enfin, si le mode est _ point GL, un appel à glEvalMesh2 est équivalent à :

glBegin(points du GL _ );

pour (j = J1 ; j <= J2 ; j + = 1)

{

pour (i = I1 ; i <= i2 ; i + = 1)

{

glEvalCoord2(i ? u + U1, j ? v + v1);

}

}

glEnd();

Dans les trois cas, les seules exigences numériques absolues sont que si i = n, la valeur est calculée à partir de i ? u + U1 est exactement U2 et, si j = m, la valeur est-elle calculée à partir de j ? v + v1 est exactement v2. Les fonctions suivantes récupèrent des informations relatives à glEvalMesh:

glGet avec argument GL _ Map1 _ Grid _ Domain

glGet avec argument GL _ map2 _ Grid _ Domain

glGet avec des _ segments de _ grille _ Map1 d’argument GL

glGet avec des _ segments de _ grille _ map2 d’argument GL

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