diff options
author | Reinhard Tartler <siretart@tauware.de> | 2011-10-10 17:43:39 +0200 |
---|---|---|
committer | Reinhard Tartler <siretart@tauware.de> | 2011-10-10 17:43:39 +0200 |
commit | f4092abdf94af6a99aff944d6264bc1284e8bdd4 (patch) | |
tree | 2ac1c9cc16ceb93edb2c4382c088dac5aeafdf0f /nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl | |
parent | a840692edc9c6d19cd7c057f68e39c7d95eb767d (diff) | |
download | nx-libs-045ad1ef854b60942711d14c3d17d9fadc21dad4.tar.gz nx-libs-045ad1ef854b60942711d14c3d17d9fadc21dad4.tar.bz2 nx-libs-045ad1ef854b60942711d14c3d17d9fadc21dad4.zip |
Imported nx-X11-3.1.0-1.tar.gznx-X11/3.1.0-1
Summary: Imported nx-X11-3.1.0-1.tar.gz
Keywords:
Imported nx-X11-3.1.0-1.tar.gz
into Git repository
Diffstat (limited to 'nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl')
-rw-r--r-- | nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl | 268 |
1 files changed, 268 insertions, 0 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl new file mode 100644 index 000000000..c5d847a7f --- /dev/null +++ b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/map1.gl @@ -0,0 +1,268 @@ +_C_ License Applicability. Except to the extent portions of this file are +_C_ made subject to an alternative license as permitted in the SGI Free +_C_ Software License B, Version 1.1 (the "License"), the contents of this +_C_ file are subject only to the provisions of the License. You may not use +_C_ this file except in compliance with the License. You may obtain a copy +_C_ of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +_C_ Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +_C_ +_C_ http://oss.sgi.com/projects/FreeB +_C_ +_C_ Note that, as provided in the License, the Software is distributed on an +_C_ "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +_C_ DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +_C_ CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +_C_ PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +_C_ +_C_ Original Code. The Original Code is: OpenGL Sample Implementation, +_C_ Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +_C_ Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +_C_ Copyright in any portions created by third parties is as indicated +_C_ elsewhere herein. All Rights Reserved. +_C_ +_C_ Additional Notice Provisions: The application programming interfaces +_C_ established by SGI in conjunction with the Original Code are The +_C_ OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +_C_ April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +_C_ 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +_C_ Window System(R) (Version 1.3), released October 19, 1998. This software +_C_ was created using the OpenGL(R) version 1.2.1 Sample Implementation +_C_ published by SGI, but has not been independently verified as being +_C_ compliant with the OpenGL(R) version 1.2.1 Specification. +_C_ +_C_ The first character in this file must be an '_'! +_C_ Anything on a line after _C_ is ignored +_define(_filters,tbl|eqn)_C_ +_C_ eqn is automatically replaced with neqn for nroff +_header(Map1,define a one-dimensional evaluator) +_names(Map1,[fd]) +.EQ +delim $$ +.EN +.SH PARAMETERS +_phead(_param1) +Specifies the kind of values that are generated by the evaluator. +Symbolic constants +_const(MAP1_VERTEX_3), +_const(MAP1_VERTEX_4), +_const(MAP1_INDEX), +_const(MAP1_COLOR_4), +_const(MAP1_NORMAL), +_const(MAP1_TEXTURE_COORD_1), +_const(MAP1_TEXTURE_COORD_2), +_const(MAP1_TEXTURE_COORD_3), and +_const(MAP1_TEXTURE_COORD_4) are accepted. +_phead(_param2 _param3) +Specify a linear mapping of $u$, +as presented to _cmnd(EvalCoord1), +to $u hat$, +the variable that is evaluated by the equations specified by this command. +_phead(_param4) +Specifies the number of floats or doubles between +the beginning of one control point and the beginning of the next one +in the data structure referenced in _param6. +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. +_phead(_param5) +Specifies the number of control points. +Must be positive. +_phead(_param6) +Specifies a pointer to the array of control points. + +.SH DESCRIPTION +Evaluators provide a way to use polynomial or rational polynomial mapping +to produce vertices, +normals, +texture coordinates, +and colors. +The values produced by an evaluator are sent to further stages +of GL processing just as if they had been presented using +_cmnd(Vertex), +_cmnd(Normal), +_cmnd(TexCoord), and +_cmnd(Color) commands, +except that the generated values do not update the current normal, +texture coordinates, +or color. +.P +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 splines used in computer graphics: B-splines, +Bezier curves, Hermite splines, and so on. +.P +Evaluators define curves based on Bernstein polynomials. +Define $p ( u hat ^) $ as +.sp +.ce +$p ( u hat ^) ~~=~~ up 10 { sum from i=0 to n } B sub i sup n ( u hat ^) R sub i$ +.sp +where +$R sub i$ +is a control point and +$B sub i sup n ( u hat ^)$ +is the $i$th Bernstein polynomial of degree $n$ (_param5 = $n ~+~ 1$): +.sp +.ce +$B sub i sup n ( u hat ^) ~~=~~ left ( down 20 {cpile { n above i }} ~~ right ) u hat sup i ( 1 - u hat ^) sup { n - i }$ +.sp +Recall that +.sp +.ce +$0 sup 0 ~==~ 1 $ and $ left ( down 20 {cpile { n above ~0 }} ~~ right ) ~~==~~ 1 $ +.P +_cmnd is used to define the basis and to specify what kind of values +are produced. +Once defined, +a map can be enabled and disabled by calling _cmnd(Enable) and _cmnd(Disable) +with the map name, one of the nine predefined values for _param1 +described below. +_cmnd(EvalCoord1) evaluates the one-dimensional maps that are enabled. +When +.br +_cmnd(EvalCoord1) presents a value $u$, +the Bernstein functions are evaluated using $u hat$, where +.br + +.ce +$u hat ~~=~~ {u ~-~ _eqnparam2} over {_eqnparam3 ~-~ _eqnparam2}$ + +.br +.P +_param1 is a symbolic constant that indicates what kind of control points +are provided in _param6, +and what output is generated when the map is evaluated. +It can assume one of nine predefined values: +.TP 25 +_const(MAP1_VERTEX_3) +Each control point is three floating-point values representing +$x$, $y$, and $z$. +Internal _cmnd(Vertex3) commands are generated when the map is evaluated. +.TP +_const(MAP1_VERTEX_4) +Each control point is four floating-point values representing +$x$, $y$, $z$, and $w$. +Internal _cmnd(Vertex4) commands are generated when the map is evaluated. +.TP +_const(MAP1_INDEX) +Each control point is a single floating-point value representing a color index. +Internal _cmnd(Index) commands are generated when the map is evaluated +but the current index is not updated with the value of these _cmnd(Index) +commands. +.TP +_const(MAP1_COLOR_4) +Each control point is four floating-point values representing +red, green, blue, and alpha. +Internal _cmnd(Color4) commands are generated when the map is +evaluated but the current color is not updated with the value of these +_cmnd(Color4) commands. +.TP +_const(MAP1_NORMAL) +Each control point is three floating-point values representing +the $x$, $y$, and $z$ components of a normal vector. +Internal _cmnd(Normal) commands are generated when the map is +evaluated but the current normal is not updated with the value of +these _cmnd(Normal) commands. +.TP +_const(MAP1_TEXTURE_COORD_1) +Each control point is a single floating-point value representing +the $s$ texture coordinate. +Internal +.br +_cmnd(TexCoord1) commands are generated when the map is +evaluated but the current texture coordinates are not updated with the value +of these _cmnd(TexCoord) commands. +.TP +_const(MAP1_TEXTURE_COORD_2) +Each control point is two floating-point values representing +the $s$ and $t$ texture coordinates. +Internal +.br +_cmnd(TexCoord2) commands are generated when the map is +evaluated but the current texture coordinates are not updated with the value +of these _cmnd(TexCoord) commands. +.TP +_const(MAP1_TEXTURE_COORD_3) +Each control point is three floating-point values representing +the $s$, $t$, and $r$ texture coordinates. +Internal _cmnd(TexCoord3) commands are generated when the map is +evaluated but the current texture coordinates are not updated with the value +of these _cmnd(TexCoord) commands. +.TP +_const(MAP1_TEXTURE_COORD_4) +Each control point is four floating-point values representing +the $s$, $t$, $r$, and $q$ texture coordinates. +Internal +.br +_cmnd(TexCoord4) commands are generated when the map is evaluated but +the current texture coordinates are not updated with the value +of these _cmnd(TexCoord) commands. +.P +_param4, +_param5, and +_param6 define the array addressing for accessing the control points. +_param6 is the location of the first control point, +which occupies one, two, three, or four contiguous memory locations, +depending on which map is being defined. +_param5 is the number of control points in the array. +_param4 specifies how many float or double locations to advance the internal +memory pointer to reach the next control point. +.SH NOTES +As is the case with all GL commands that accept pointers to data, +it is as if the contents of _param6 were copied by _cmnd before _cmnd +returns. +Changes to the contents of _param6 have no effect after _cmnd is called. +.SH ERRORS +_const(INVALID_ENUM) is generated if _param1 is not an accepted value. +.P +_const(INVALID_VALUE) is generated if _param2 is equal to _param3. +.P +_const(INVALID_VALUE) is generated if _param4 is less than the number +of values in a control point. +.P +_const(INVALID_VALUE) is generated if _param5 is less than 1 or +greater than the return value of _const(MAX_EVAL_ORDER). +.P +_const(INVALID_OPERATION) is generated if _cmnd +is executed between the execution of +_cmnd(Begin) +and the corresponding execution of _cmnd(End). +.P +When the _arbstring(multitexture) extension is supported, +_const(INVALID_OPERATION) is generated if _cmnd is called and the value +of _arbconst(ACTIVE_TEXTURE) is not _arbconst(TEXTURE0). +.SH ASSOCIATED GETS +_cmnd(GetMap) +.br +_cmnd(Get) with argument _const(MAX_EVAL_ORDER) +.br +_cmnd(IsEnabled) with argument _const(MAP1_VERTEX_3) +.br +_cmnd(IsEnabled) with argument _const(MAP1_VERTEX_4) +.br +_cmnd(IsEnabled) with argument _const(MAP1_INDEX) +.br +_cmnd(IsEnabled) with argument _const(MAP1_COLOR_4) +.br +_cmnd(IsEnabled) with argument _const(MAP1_NORMAL) +.br +_cmnd(IsEnabled) with argument _const(MAP1_TEXTURE_COORD_1) +.br +_cmnd(IsEnabled) with argument _const(MAP1_TEXTURE_COORD_2) +.br +_cmnd(IsEnabled) with argument _const(MAP1_TEXTURE_COORD_3) +.br +_cmnd(IsEnabled) with argument _const(MAP1_TEXTURE_COORD_4) +.SH SEE ALSO +_cmnd(Begin), +_cmnd(Color), +_cmnd(Enable), +_cmnd(EvalCoord), +_cmnd(EvalMesh), +_cmnd(EvalPoint), +_cmnd(Map2), +_cmnd(MapGrid), +_cmnd(Normal), +_cmnd(TexCoord), +_cmnd(Vertex) |