fglMapGrid(3G)

fglMapGrid1d, fglMapGrid1f, fglMapGrid2d, fglMapGrid2f - define a one- or two-dimensional mesh

As shipped in IRIX 6.5. First release of IRIX 6.5.

NAME
     fglMapGrid1d, fglMapGrid1f, fglMapGrid2d, fglMapGrid2f - define a one- or
     two-dimensional mesh


FORTRAN SPECIFICATION
     SUBROUTINE fglMapGrid1d( INTEGER*4 un,
                              REAL*4 u1,
                              REAL*4 u2 )
     SUBROUTINE fglMapGrid1f( INTEGER*4 un,
                              REAL*4 u1,
                              REAL*4 u2 )
     SUBROUTINE fglMapGrid2d( INTEGER*4 un,
                              REAL*4 u1,
                              REAL*4 u2,
                              INTEGER*4 vn,
                              REAL*4 v1,
                              REAL*4 v2 )
     SUBROUTINE fglMapGrid2f( INTEGER*4 un,
                              REAL*4 u1,
                              REAL*4 u2,
                              INTEGER*4 vn,
                              REAL*4 v1,
                              REAL*4 v2 )


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] (fglMapGrid2 only).

     v1, v2
         Specify the mappings for integer grid domain values j=0 and j=vn
         (fglMapGrid2 only).


DESCRIPTION
     fglMapGrid and fglEvalMesh are used in tandem to efficiently generate and
     evaluate a series of evenly spaced map domain values.  fglEvalMesh steps
     through the integer domain of a one- or two-dimensional grid, whose range
     is the domain of the evaluation maps specified by fglMap1 and fglMap2.

     fglMapGrid1 and fglMapGrid2 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 fglMap1 and fglMap2 for details of
     how u and v coordinates are evaluated.
     fglMapGrid1 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 such that

                               u = i(u2-u1)/un + u1

     fglMapGrid2 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 fglMapGrid are used identically by fglEvalMesh
     and fglEvalPoint.

ERRORS
     GL_INVALID_VALUE is generated if either un or vn is not positive.

     GL_INVALID_OPERATION is generated if fglMapGrid is executed between the
     execution of fglBegin and the corresponding execution of fglEnd.

ASSOCIATED GETS
     fglGet with argument GL_MAP1_GRID_DOMAIN
     fglGet with argument GL_MAP2_GRID_DOMAIN
     fglGet with argument GL_MAP1_GRID_SEGMENTS
     fglGet with argument GL_MAP2_GRID_SEGMENTS


SEE ALSO
     fglEvalCoord, fglEvalMesh, fglEvalPoint, fglMap1, fglMap2