Scroll to navigation

GLMAPGRID(3G) GLMAPGRID(3G)

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 )

PARAMETERS

Specifies the number of partitions in the grid range interval [u1, u2]. Must be positive.
Specify the mappings for integer grid domain values i=0 and i=un .
Specifies the number of partitions in the grid range interval [v1, v2]
(glMapGrid2 only).
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(u2u1)/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(u2u1)/un+u1


v=j(v2v1)/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)