Method GL.glMapGrid()


Method glMapGrid

void glMapGrid(int un, float u1, float u2)
void glMapGrid(int un, float u1, float u2, int vn, float v1, float v2)

Description

glMapGrid and glEvalMesh1 and glEvalMesh2 are used together to efficiently generate and evaluate a series of evenly-spaced map domain values. glEvalMesh1 and glEvalMesh2 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.

glMapGrid specifies 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.

glMapGrid with three arguments 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 .sp .ce .EQ u ~=~ i ("u2" - "u1") / "un" ~+~ "u1" .EN .sp glMapGrid with six arguments 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

.ce .EQ u ~=~ i ("u2" - "u1") / "un" ~+~ "u1" .EN

.ce .EQ v ~=~ j ("v2" - "v1") / "vn" ~+~ "v1" .EN

The mappings specified by glMapGrid are used identically by glEvalMesh1 and glEvalMesh2 and glEvalPoint.

Parameter un

Specifies the number of partitions in the grid range interval [u1, u2]. Must be positive.

Parameter u1

Specify the mappings for integer grid domain values i=0 and i="un".

Parameter vn

Specifies the number of partitions in the grid range interval [v1, v2]

(Optional arguments).

Parameter v1

Specify the mappings for integer grid domain values j=0 and j="vn"

(With six arguments only).

Throws

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.