GLMAPGRID
Section: Misc. Reference Manual Pages (3G)
Index
Return to Main Contents
NAME
glMapGrid1d, glMapGrid1f, glMapGrid2d, glMapGrid2f
- define a one- or two-dimensional mesh
C SPECIFICATION
void glMapGrid1d(
GLint un,
GLdouble u1,
GLdouble u2 )
void glMapGrid1f(
GLint un,
GLfloat u1,
GLfloat u2 )
void glMapGrid2d(
GLint un,
GLdouble u1,
GLdouble u2,
GLint vn,
GLdouble v1,
GLdouble v2 )
void glMapGrid2f(
GLint un,
GLfloat u1,
GLfloat u2,
GLint vn,
GLfloat v1,
GLfloat v2 )
delim $$
PARAMETERS
- un
-
Specifies the number of partitions in the grid range interval
[u1, u2].
Must be positive.
- u1, u2
-
Specify the mappings for integer grid domain values $i~=~0$ and $i~=~"un"$.
- vn
-
Specifies the number of partitions in the grid range interval
[v1, v2]
(glMapGrid2 only).
- v1, v2
-
Specify the mappings for integer grid domain values $j~=~0$ and $j~=~"vn"$
(glMapGrid2 only).
DESCRIPTION
glMapGrid and glEvalMesh are used together to efficiently
generate and evaluate a series of evenly-spaced map domain values.
glEvalMesh steps through the integer domain
of a one- or two-dimensional grid,
whose range is the domain of the evaluation maps specified by
glMap1 and glMap2.
glMapGrid1 and glMapGrid2 specify the linear grid mappings
between the $i$
(or $i$ and $j$)
integer grid coordinates,
to the $u$
(or $u$ and $v$)
floating-point evaluation map coordinates.
See glMap1 and glMap2 for details of how $u$ and $v$ coordinates
are evaluated.
glMapGrid1 specifies a single linear mapping
such that integer grid coordinate 0 maps exactly to u1,
and integer grid coordinate un maps exactly to u2.
All other integer grid coordinates $i$ are mapped so that
u ~=~ i ("u2" - "u1") / "un" ~+~ "u1"
glMapGrid2 specifies two such linear mappings.
One maps integer grid coordinate $i~=~0$ exactly to u1,
and integer grid coordinate $i~=~"un"$ exactly to u2.
The other maps integer grid coordinate $j~=~0$ exactly to v1,
and integer grid coordinate $j~=~"vn"$ exactly to v2.
Other integer grid coordinates $i$ and $j$ are mapped such that
u ~=~ i ("u2" - "u1") / "un" ~+~ "u1"
v ~=~ j ("v2" - "v1") / "vn" ~+~ "v1"
The mappings specified by glMapGrid are used identically by
glEvalMesh and glEvalPoint.
ERRORS
GL_INVALID_VALUE is generated if either un or vn is not
positive.
GL_INVALID_OPERATION is generated if glMapGrid
is executed between the execution of glBegin
and the corresponding execution of glEnd.
ASSOCIATED GETS
glGet with argument GL_MAP1_GRID_DOMAIN
glGet with argument GL_MAP2_GRID_DOMAIN
glGet with argument GL_MAP1_GRID_SEGMENTS
glGet with argument GL_MAP2_GRID_SEGMENTS
SEE ALSO
glEvalCoord(3G),
glEvalMesh(3G),
glEvalPoint(3G),
glMap1(3G),
glMap2(3G)