📄 evalcoord.html
字号:
<HTML>
<BODY>
<PRE>
<STRONG>NAME</STRONG>
<STRONG>glEvalCoord1d,</STRONG> <STRONG>glEvalCoord1f,</STRONG> <STRONG>glEvalCoord2d,</STRONG> <STRONG>glEvalCoord2f,</STRONG>
<STRONG>glEvalCoord1dv,</STRONG> <STRONG>glEvalCoord1fv,</STRONG> <STRONG>glEvalCoord2dv,</STRONG>
<STRONG>glEvalCoord2fv</STRONG> - evaluate enabled one- and two-dimensional
maps
<STRONG>C</STRONG> <STRONG>SPECIFICATION</STRONG>
void <STRONG>glEvalCoord1d</STRONG>( GLdouble <EM>u</EM> )
void <STRONG>glEvalCoord1f</STRONG>( GLfloat <EM>u</EM> )
void <STRONG>glEvalCoord2d</STRONG>( GLdouble <EM>u</EM>,
GLdouble <EM>v</EM> )
void <STRONG>glEvalCoord2f</STRONG>( GLfloat <EM>u</EM>,
GLfloat <EM>v</EM> )
<STRONG>PARAMETERS</STRONG>
<EM>u</EM> Specifies a value that is the domain coordinate u to the
basis function defined in a previous <STRONG>glMap1</STRONG> or <STRONG>glMap2</STRONG>
command.
<EM>v</EM> Specifies a value that is the domain coordinate v to the
basis function defined in a previous <STRONG>glMap2</STRONG> command.
This argument is not present in a <STRONG>glEvalCoord1</STRONG> command.
<STRONG>C</STRONG> <STRONG>SPECIFICATION</STRONG>
void <STRONG>glEvalCoord1dv</STRONG>( const GLdouble *<EM>u</EM> )
void <STRONG>glEvalCoord1fv</STRONG>( const GLfloat *<EM>u</EM> )
void <STRONG>glEvalCoord2dv</STRONG>( const GLdouble *<EM>u</EM> )
void <STRONG>glEvalCoord2fv</STRONG>( const GLfloat *<EM>u</EM> )
<STRONG>PARAMETERS</STRONG>
<EM>u</EM> 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
<STRONG>glEvalCoord2</STRONG> versions.
<STRONG>DESCRIPTION</STRONG>
<STRONG>glEvalCoord1</STRONG> evaluates enabled one-dimensional maps at
argument <EM>u</EM>. <STRONG>glEvalCoord2</STRONG> does the same for two-dimensional
maps using two domain values, <EM>u</EM> and <EM>v</EM>. To define a map,
call <STRONG>glMap1</STRONG> and <STRONG>glMap2</STRONG>; to enable and disable it, call
<STRONG>glEnable</STRONG> and <STRONG>glDisable</STRONG>.
When one of the <STRONG>glEvalCoord</STRONG> 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 had been issued with the computed
value. That is, if <STRONG>GL_MAP1_INDEX</STRONG> or <STRONG>GL_MAP2_INDEX</STRONG> is
enabled, a <STRONG>glIndex</STRONG> command is simulated. If <STRONG>GL_MAP1_COLOR_4</STRONG>
or <STRONG>GL_MAP2_COLOR_4</STRONG> is enabled, a <STRONG>glColor</STRONG> command is
simulated. If <STRONG>GL_MAP1_NORMAL</STRONG> or <STRONG>GL_MAP2_NORMAL</STRONG> is enabled,
a normal vector is produced, and if any of
<STRONG>GL_MAP1_TEXTURE_COORD_1</STRONG>, <STRONG>GL_MAP1_TEXTURE_COORD_2</STRONG>,
<STRONG>GL_MAP1_TEXTURE_COORD_3</STRONG>, <STRONG>GL_MAP1_TEXTURE_COORD_4</STRONG>,
<STRONG>GL_MAP2_TEXTURE_COORD_1</STRONG>, <STRONG>GL_MAP2_TEXTURE_COORD_2</STRONG>,
<STRONG>GL_MAP2_TEXTURE_COORD_3</STRONG>, or <STRONG>GL_MAP2_TEXTURE_COORD_4</STRONG> is
enabled, then an appropriate <STRONG>glTexCoord</STRONG> command is
simulated.
For color, color index, normal, and texture coordinates the
GL uses evaluated values instead of current values for those
evaluations that are enabled, and current values otherwise,
However, the evaluated values do not update the current
values. Thus, if <STRONG>glVertex</STRONG> commands are interspersed with
<STRONG>glEvalCoord</STRONG> commands, the color, normal, and texture
coordinates associated with the <STRONG>glVertex</STRONG> commands are not
affected by the values generated by the <STRONG>glEvalCoord</STRONG>
commands, but only by the most recent <STRONG>glColor</STRONG>, <STRONG>glIndex</STRONG>,
<STRONG>glNormal</STRONG>, and <STRONG>glTexCoord</STRONG> 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, <STRONG>GL_MAP2_TEXTURE_COORD_1</STRONG> and
<STRONG>GL_MAP2_TEXTURE_COORD_2</STRONG>), then only the evaluation of the
map that produces the larger number of coordinates (in this
case, <STRONG>GL_MAP2_TEXTURE_COORD_2</STRONG>) is carried out.
<STRONG>GL_MAP1_VERTEX_4</STRONG> overrides <STRONG>GL_MAP1_VERTEX_3</STRONG>, and
<STRONG>GL_MAP2_VERTEX_4</STRONG> overrides <STRONG>GL_MAP2_VERTEX_3</STRONG>, in the same
manner. If neither a three- nor a four-component vertex map
is enabled for the specified dimension, the <STRONG>glEvalCoord</STRONG>
command is ignored.
If you have enabled automatic normal generation, by calling
<STRONG>glEnable</STRONG> with argument <STRONG>GL_AUTO_NORMAL</STRONG>, <STRONG>glEvalCoord2</STRONG>
generates surface normals analytically, regardless of the
contents or enabling of the <STRONG>GL_MAP2_NORMAL</STRONG> map. Let
Pp Pp
m = -- X --
Pu Pv
Then the generated normal n is
<STRONG>_</STRONG>
n=_____
||m||
If automatic normal generation is disabled, the
corresponding normal map <STRONG>GL_MAP2_NORMAL</STRONG>, if enabled, is used
to produce a normal. If neither automatic normal generation
nor a normal map is enabled, no normal is generated for
<STRONG>glEvalCoord2</STRONG> commands.
<STRONG>ASSOCIATED</STRONG> <STRONG>GETS</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_VERTEX_3</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_VERTEX_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_INDEX</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_COLOR_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_NORMAL</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_TEXTURE_COORD_1</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_TEXTURE_COORD_2</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_TEXTURE_COORD_3</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP1_TEXTURE_COORD_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_VERTEX_3</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_VERTEX_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_INDEX</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_COLOR_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_NORMAL</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_TEXTURE_COORD_1</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_TEXTURE_COORD_2</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_TEXTURE_COORD_3</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_MAP2_TEXTURE_COORD_4</STRONG>
<STRONG>glIsEnabled</STRONG> with argument <STRONG>GL_AUTO_NORMAL</STRONG>
<STRONG>glGetMap</STRONG>
<STRONG>SEE</STRONG> <STRONG>ALSO</STRONG>
<STRONG>glBegin</STRONG>, <STRONG>glColor</STRONG>, <STRONG>glEnable</STRONG>, <STRONG>glEvalMesh</STRONG>, <STRONG>glEvalPoint</STRONG>,
<STRONG>glIndex</STRONG>, <STRONG>glMap1</STRONG>, <STRONG>glMap2</STRONG>, <STRONG>glMapGrid</STRONG>, <STRONG>glNormal</STRONG>, <STRONG>glTexCoord</STRONG>,
<STRONG>glVertex</STRONG>
</PRE>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -