glevalcoord - Man Page






glEvalCoord(3G)		       OpenGL Reference		       glEvalCoord(3G)



NAME
     glEvalCoord1d, glEvalCoord1f, glEvalCoord2d, glEvalCoord2f,
     glEvalCoord1dv, glEvalCoord1fv, glEvalCoord2dv, glEvalCoord2fv - evaluate
     enabled one- and two-dimensional maps


C SPECIFICATION
     void glEvalCoord1d( GLdouble u )
     void glEvalCoord1f( GLfloat u )
     void glEvalCoord2d( GLdouble u,
			 GLdouble v )
     void glEvalCoord2f( GLfloat u,
			 GLfloat v )


PARAMETERS
     u	Specifies a value that is the domain coordinate	u to the basis
	function defined in a previous glMap1 or glMap2	command.

     v	Specifies a value that is the domain coordinate	v to the basis
	function defined in a previous glMap2 command.	This argument is not
	present	in an glEvalCoord1 command.

C SPECIFICATION
     void glEvalCoord1dv( const	GLdouble *u )
     void glEvalCoord1fv( const	GLfloat	*u )
     void glEvalCoord2dv( const	GLdouble *u )
     void glEvalCoord2fv( const	GLfloat	*u )


PARAMETERS
     u	  Specifies a pointer to an array containing either one	or two domain
	  coordinates.	The first coordinate is	u.  The	second coordinate is
	  v, which is present only in glEvalCoord2 versions.

DESCRIPTION
     glEvalCoord1 evaluates enabled one-dimensional maps at argument u.
     glEvalCoord2 does the same	for two-dimensional maps using two domain
     values, u and v.  Maps are	defined	with glMap1 and	glMap2 and enabled and
     disabled with  glEnable and glDisable.

     When one of the glEvalCoord commands is issued, all currently enabled
     maps of the indicated dimension are evaluated.  Then, for each enabled
     map, it is	as if the corresponding	GL command was issued with the
     computed value.  That is, if GL_MAP1_INDEX	or GL_MAP2_INDEX is enabled, a
     glIndex command is	simulated.  If GL_MAP1_COLOR_4 or GL_MAP2_COLOR_4 is
     enabled, a	glColor	command	is simulated.  If GL_MAP1_NORMAL or
     GL_MAP2_NORMAL is enabled,	a normal vector	is produced, and if any	of
     GL_MAP1_TEXTURE_COORD_1, GL_MAP1_TEXTURE_COORD_2,
     GL_MAP1_TEXTURE_COORD_3, GL_MAP1_TEXTURE_COORD_4,
     GL_MAP2_TEXTURE_COORD_1, GL_MAP2_TEXTURE_COORD_2,
     GL_MAP2_TEXTURE_COORD_3, or GL_MAP2_TEXTURE_COORD_4 is enabled, then an



									Page 1






glEvalCoord(3G)		       OpenGL Reference		       glEvalCoord(3G)



     appropriate glTexCoord command is simulated.

     The GL uses evaluated values instead of current values for	those
     evaluations that are enabled, and current values otherwise, for color,
     color index, normal, and texture coordinates.  However, the evaluated
     values do not update the current values.  Thus, if	glVertex commands are
     interspersed with glEvalCoord commands, the color,	normal,	and texture
     coordinates associated with the glVertex commands are not affected	by the
     values generated by the glEvalCoord commands, but rather only by the most
     recent glColor, glIndex, glNormal,	and glTexCoord commands.

     No	commands are issued for	maps that are not enabled.  If more than one
     texture evaluation	is enabled for a particular dimension (for example,
     GL_MAP2_TEXTURE_COORD_1 and GL_MAP2_TEXTURE_COORD_2), then	only the
     evaluation	of the map that	produces the larger number of coordinates (in
     this case,	GL_MAP2_TEXTURE_COORD_2) is carried out.  GL_MAP1_VERTEX_4
     overrides GL_MAP1_VERTEX_3, and GL_MAP2_VERTEX_4 overrides
     GL_MAP2_VERTEX_3, in the same manner.  If neither a three-	nor four-
     component vertex map is enabled for the specified dimension, the
     glEvalCoord command is ignored.

     If	automatic normal generation is enabled,	by calling glEnable with
     argument GL_AUTO_NORMAL, glEvalCoord2 generates surface normals
     analytically, regardless of the contents or enabling of the
     GL_MAP2_NORMAL map.  Let
					   __
				      m=__x]v
					]u
     Then the generated	normal n is
					_____
				      n=||m||

     If	automatic normal generation is disabled, the corresponding normal map
     GL_MAP2_NORMAL, if	enabled, is used to produce a normal.  If neither
     automatic normal generation nor a normal map is enabled, no normal	is
     generated for glEvalCoord2	commands.

ASSOCIATED GETS
     glIsEnabled with argument GL_MAP1_VERTEX_3
     glIsEnabled with argument GL_MAP1_VERTEX_4
     glIsEnabled with argument GL_MAP1_INDEX
     glIsEnabled with argument GL_MAP1_COLOR_4
     glIsEnabled with argument GL_MAP1_NORMAL
     glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1
     glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2
     glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3
     glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4
     glIsEnabled with argument GL_MAP2_VERTEX_3
     glIsEnabled with argument GL_MAP2_VERTEX_4
     glIsEnabled with argument GL_MAP2_INDEX
     glIsEnabled with argument GL_MAP2_COLOR_4



									Page 2






glEvalCoord(3G)		       OpenGL Reference		       glEvalCoord(3G)



     glIsEnabled with argument GL_MAP2_NORMAL
     glIsEnabled with argument GL_MAP2_TEXTURE_COORD_1
     glIsEnabled with argument GL_MAP2_TEXTURE_COORD_2
     glIsEnabled with argument GL_MAP2_TEXTURE_COORD_3
     glIsEnabled with argument GL_MAP2_TEXTURE_COORD_4
     glIsEnabled with argument GL_AUTO_NORMAL
     glGetMap


MACHINE	DEPENDENCIES
     RealityEngine, RealityEngine2, and	VTX systems do not handle 1D maps for
     colors correctly.


SEE ALSO
     glBegin, glColor, glEnable, glEvalMesh, glEvalPoint, glIndex, glMap1,
     glMap2, glMapGrid,	glNormal, glTexCoord, glVertex






































									Page 3