funzione glEvalMesh2
Calcola una griglia bidimensionale di punti o linee.
Sintassi
void WINAPI glEvalMesh2(
GLenum mode,
GLint i1,
GLint i2,
GLint j1,
GLint j2
);
Parametri
-
mode
-
Valore che specifica se calcolare una mesh bidimensionale di punti, linee o poligoni. Le costanti simboliche seguenti sono accettate: GL_POINT, GL_LINE e GL_FILL.
-
i1
-
Primo valore intero per la variabile di dominio griglia i.
-
i2
-
Ultimo valore integer per la variabile di dominio griglia i.
-
j1
-
Primo valore intero per la variabile di dominio griglia j.
-
j2
-
Ultimo valore intero per la variabile di dominio griglia j.
Valore restituito
Questa funzione non restituisce un valore.
Codici di errore
I codici di errore seguenti possono essere recuperati dalla funzione glGetError .
Nome | Significato |
---|---|
|
Indica che la modalità non è un valore accettato. |
|
La funzione è stata chiamata tra una chiamata a glBegin e la chiamata corrispondente a glEnd. |
Commenti
Usare glMapGrid e glEvalMesh in combinazione per generare e valutare in modo efficiente una serie di valori di dominio mappa con spaziatura uniforme. La funzione glEvalMesh passa attraverso il dominio intero di una griglia uno o bidimensionale, il cui intervallo è il dominio delle mappe di valutazione specificate da glMap1 e glMap2. Il parametro modalità determina se i vertici risultanti sono connessi come punti, linee o poligoni riempiti.
Nel caso bidimensionale , glEvalMesh2, let
? u = (u2 u1)/n
? v = (v2 v1)/m,
dove n, u1, u2, m, v1 e v2 sono gli argomenti alla funzione glMapGrid2 più recente. Quindi, se la modalità è GL_FILL, glEvalMesh2 equivale a:
for (j = j1; j2 < ; j += 1)
{
glBegin(GL_QUAD_STRIP);
for (i = i1; <i = i2; i += 1)
{
glEvalCoord2(i? u + u1 ( ) , j ? v + v1);
glEvalCoord2(i? u + u1 ( ) , (j+1) ? v + v1);
}
glEnd( ); }
Se la modalità è GL_LINE, una chiamata a glEvalMesh2 equivale a:
for (j = j1; j <= j2; j += 1)
{
glBegin(GL_LINE_STRIP);
for (i = i1; <i = i2; i += 1)
{
glEvalCoord2(i? u + u1, j? v + v1);
}
glEnd( );
}
for (i = i1; <i = i2; i += 1)
{
glBegin(GL_LINE_STRIP);
for (j = j1; j <= j1; j += 1)
{
glEvalCoord2(i? u + u1, j? v + v1);
}
glEnd( );
}
Infine, se la modalità è GL_POINT, una chiamata a glEvalMesh2 equivale a:
glBegin(GL_POINTS);
for (j = j1; j <= j2; j += 1)
{
for (i = i1; <i = i2; i += 1)
{
glEvalCoord2(i? u + u1, j? v + v1);
}
}
glEnd( );
In tutti e tre i casi, gli unici requisiti numerici assoluti sono che se i = n, il valore calcolato da i? u + u1 è esattamente u2 e se j = m, il valore calcolato da j? v + v1 è esattamente v2. Le funzioni seguenti recuperano informazioni relative a glEvalMesh:
glGet con argomento GL_MAP1_GRID_DOMAIN
glGet con argomento GL_MAP2_GRID_DOMAIN
glGet con argomento GL_MAP1_GRID_SEGMENTS
glGet con argomento GL_MAP2_GRID_SEGMENTS
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 2000 Professional [solo app desktop] |
Server minimo supportato |
Windows 2000 Server [solo app desktop] |
Intestazione |
|
Libreria |
|
DLL |
|