Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Calcula uma grade bidimensional de pontos ou linhas.
Sintaxe
void WINAPI glEvalMesh2(
GLenum mode,
GLint i1,
GLint i2,
GLint j1,
GLint j2
);
Parâmetros
-
mode
-
Um valor que especifica se é necessário calcular uma malha bidimensional de pontos, linhas ou polígonos. As seguintes constantes simbólicas são aceitas: GL_POINT, GL_LINE e GL_FILL.
-
i1
-
O primeiro valor inteiro para a variável de domínio de grade i.
-
i2
-
O último valor inteiro para a variável de domínio de grade i.
-
j1
-
O primeiro valor inteiro para a variável de domínio de grade j.
-
j2
-
O último valor inteiro para a variável de domínio de grade j.
Retornar valor
Essa função não retorna um valor.
Códigos de erro
Os códigos de erro a seguir podem ser recuperados pela função glGetError .
| Nome | Significado |
|---|---|
|
Indica que o modo não é um valor aceito. |
|
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd. |
Comentários
Use glMapGrid e glEvalMesh em conjunto para gerar e avaliar com eficiência uma série de valores de domínio de mapa uniformemente espaçados. A função glEvalMesh percorre o domínio inteiro de uma grade unidimensional ou unidimensional, cujo intervalo é o domínio dos mapas de avaliação especificados por glMap1 e glMap2. O parâmetro mode determina se os vértices resultantes estão conectados como pontos, linhas ou polígonos preenchidos.
No caso bidimensional, glEvalMesh2, let
? u = (u2 u1)/n
? v = (v2 v1)/m,
em que n, u1, u2, m, v1 e v2 são os argumentos para a função glMapGrid2 mais recente. Em seguida, se o modo for GL_FILL, glEvalMesh2 será equivalente a:
para (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 o modo for GL_LINE, uma chamada para glEvalMesh2 será equivalente 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( );
}
Por fim, se o modo for GL_POINT, uma chamada para glEvalMesh2 será equivalente 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( );
Em todos os três casos, os únicos requisitos numéricos absolutos são que, se i = n, o valor calculado de i? u + u1 é exatamente u2 e, se j = m, o valor calculado de j? v + v1 é exatamente v2. As seguintes funções recuperam informações relacionadas a glEvalMesh:
glGet com GL_MAP1_GRID_DOMAIN de argumento
glGet com GL_MAP2_GRID_DOMAIN de argumento
glGet com GL_MAP1_GRID_SEGMENTS de argumento
glGet com GL_MAP2_GRID_SEGMENTS de argumento
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte |
Windows 2000 Professional [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte |
Windows 2000 Server [somente aplicativos da área de trabalho] |
| Cabeçalho |
|
| Biblioteca |
|
| DLL |
|