gl:map-2

(gfx:map-2 opengl target u1 u2 ustride uorder v1 v2 vstride vorder points)


Description:

Evaluators provide a way to use polynomial or rational polynomial mapping to produce vertices, normals,  tex-       ture  coordinates,  and colors.  The values produced by an evaluator are sent on to further stages of GL pro-       cessing just as if they had been presented using glVertex, glNormal, glTexCoord, and glColor commands, except       that the generated values do not update the current normal, texture coordinates, or color.       All  polynomial  or  rational  polynomial splines of any degree (up to the maximum degree supported by the GL       implementation) can be described using evaluators.  These include almost all surfaces used in computer graph-       ics, including B-spline surfaces, NURBS surfaces, Bezier surfaces, and so on.


Arguments:

         v1, v2 --    Specify a linear mapping of v, as presented to glEvalCoord2, to v hat, one of the two variables that

                are evaluated by the equations specified by this command. Initially, v1 is 0 and v2 is 1.

         target --    Specifies   the   kind   of  values  that  are  generated  by  the  evaluator.   Symbolic  constants

                GL_MAP2_VERTEX_3,     GL_MAP2_VERTEX_4,     GL_MAP2_INDEX,     GL_MAP2_COLOR_4,      GL_MAP2_NORMAL,

                GL_MAP2_TEXTURE_COORD_1,         GL_MAP2_TEXTURE_COORD_2,        GL_MAP2_TEXTURE_COORD_3,        and

                GL_MAP2_TEXTURE_COORD_4 are accepted.

         opengl -- opengl instance

         u1, u2 --    Specify a linear mapping of u, as presented to glEvalCoord2, to u hat, one of the two variables that

                are evaluated by the equations specified by this command. Initially, u1 is 0 and u2 is 1.

         points -- Specifies a pointer to the array of control points.

         uorder --    Specifies  the  dimension  of  the control point array in the u axis.  Must be positive. The initial

                value is 1.

        ustride --   Specifies  the number of floats or doubles between the beginning of control point Rij and the begin-

                ning of control point R(i+1)j , where i and j are the u and v control point  indices,  respectively.

                This allows control points to be embedded in arbitrary data structures.  The only constraint is that

                the values for a particular control point must occupy contiguous memory locations. The initial value

                of ustride is 0.

         vorder --    Specifies  the  dimension  of  the control point array in the v axis.  Must be positive. The initial

                value is 1.

        vstride -- Specifies  the number of floats or doubles between the beginning of control point Rij and the begin-

                ning of control point Ri(j+1), where i and j are the u and v control  point  indices,  respectively.

                This allows control points to be embedded in arbitrary data structures.  The only constraint is that

                the values for a particular control point must occupy contiguous memory locations. The initial value

                of vstride is 0.


Returns: boolean


Examples:



Back to index