GLMAPGRID() MachTen Programmer’s Manual GLMAPGRID()
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, glEvalMesh, glEvalPoint, glMap1, glMap2
MachTen 2