2.0 3.0 > comp > gb.opengl > gl > mapgrid2f
Previous  Next  Edit  Rename  Undo  Search  Administration
 Documentation
Gl.MapGrid2f (gb.opengl)
`Static Sub MapGrid2f ( Un As Integer, U1 As Float, U2 As Float, Vn As Integer, V1 As Float, V2 As Float )`

Define a one- or two-dimensional mesh.

### 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 $\mathit{i}=0$ and $\mathit{i}=\mathit{un}$.

vn

Specifies the number of partitions in the grid range interval _v1_, _v2_ (Gl.MapGrid2 only).

v1, v2

Specify the mappings for integer grid domain values $\mathit{j}=0$ and $\mathit{j}=\mathit{vn}$ (Gl.MapGrid2 only).

### Description

Gl.MapGrid and Gl.EvalMesh are used together to efficiently generate and evaluate a series of evenly-spaced map domain values. Gl.EvalMesh steps through the integer domain of a one- or two-dimensional grid, whose range is the domain of the evaluation maps specified by Gl.Map1 and Gl.Map2.

Gl.MapGrid1 and Gl.MapGrid2 specify the linear grid mappings between the $\mathit{i}$ (or $\mathit{i}$ and $\mathit{j}$) integer grid coordinates, to the $\mathit{u}$ (or $\mathit{u}$ and $\mathit{v}$) floating-point evaluation map coordinates. See Gl.Map1 and Gl.Map2 for details of how $\mathit{u}$ and $\mathit{v}$ coordinates are evaluated.

Gl.MapGrid1 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 $\mathit{i}$ are mapped so that

$\mathit{u}=\frac{\mathit{i}\left(\mathit{u2}-\mathit{u1}\right)}{\mathit{un}}+\mathit{u1}$

Gl.MapGrid2 specifies two such linear mappings. One maps integer grid coordinate $\mathit{i}=0$ exactly to u1, and integer grid coordinate $\mathit{i}=\mathit{un}$ exactly to u2. The other maps integer grid coordinate $\mathit{j}=0$ exactly to v1, and integer grid coordinate $\mathit{j}=\mathit{vn}$ exactly to v2. Other integer grid coordinates $\mathit{i}$ and $\mathit{j}$ are mapped such that

$\mathit{u}=\frac{\mathit{i}\left(\mathit{u2}-\mathit{u1}\right)}{\mathit{un}}+\mathit{u1}$

$\mathit{v}=\frac{\mathit{j}\left(\mathit{v2}-\mathit{v1}\right)}{\mathit{vn}}+\mathit{v1}$

The mappings specified by Gl.MapGrid are used identically by Gl.EvalMesh and Gl.EvalPoint.

### Errors

Gl.INVALID_VALUE is generated if either un or vn is not positive.

Gl.INVALID_OPERATION is generated if Gl.MapGrid is executed between the execution of Gl.Begin and the corresponding execution of Gl.End.

### Associated Gets

Gl.Get with argument Gl.MAP1_GRID_DOMAIN

Gl.Get with argument Gl.MAP2_GRID_DOMAIN

Gl.Get with argument Gl.MAP1_GRID_SEGMENTS

Gl.Get with argument Gl.MAP2_GRID_SEGMENTS