Two-dimensional evaluators follow their one dimensional counterparts, and are used in a similar way.
Map2(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, matrix)
Eval Coord2(u, v)
Values for the target argument are the same as those shown in Map1 Target Arguments and Default Values with Map1 replaced with Map2 appropriately. The u1, u2, v1, and v2 values specify the range of the two-dimensional mesh.
For example, Map2(MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, <16x3 matrix>) is typical for setting the 16 points that define a Bézier surface.
MapGrid2(un, u1, u2, vn, v1, v2)
sets up the mesh with un and vn divisions spanning the range u1 to u2 and v1 to v2. Code is simplified by using ranges that span 0 to 1.
EvalMesh2(mode, i1, i2, j1, j2)
actually generates the mesh from i1 to i2 and j1 to j2. The mode can be POINT, LINE, or FILL. The EvalMesh2 command makes its own Begin and End clause.