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/manglu/standard/nurbscallback.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/manglu/standard/nurbscallback.gl')
-rw-r--r-- | nx-X11/extras/ogl-sample/main/doc/man/manglu/standard/nurbscallback.gl | 241 |
1 files changed, 241 insertions, 0 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/manglu/standard/nurbscallback.gl b/nx-X11/extras/ogl-sample/main/doc/man/manglu/standard/nurbscallback.gl new file mode 100644 index 000000000..953d01bca --- /dev/null +++ b/nx-X11/extras/ogl-sample/main/doc/man/manglu/standard/nurbscallback.gl @@ -0,0 +1,241 @@ +_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_ $Date: 2004/03/14 08:29:09 $ $Revision: 1.1.1.4 $ +_C_ The first character in this file must be an '_'! +_C_ Anything on a line after _C_ is ignored +_define(_filters,eqn)_C_ +_C_ eqn is automatically replaced with neqn for nroff +_header(NurbsCallback, define a callback for a NURBS object) +_names(NurbsCallback) +.EQ +delim $$ +.EN +.SH PARAMETERS +_phead(_param1) +Specifies the NURBS object (created with _cmnd(NewNurbsRenderer)). +_phead(_param2) +Specifies the callback being defined. +Valid values are _gluconst(NURBS_BEGIN), _gluconst(NURBS_VERTEX), _gluconst(NURBS_NORMAL), _gluconst(NURBS_COLOR), _gluconst(NURBS_TEXTURE_COORD), _gluconst(NURBS_END), _gluconst(NURBS_BEGIN_DATA), _gluconst(NURBS_VERTEX_DATA), _gluconst(NURBS_NORMAL_DATA), _gluconst(NURBS_COLOR_DATA), _gluconst(NURBS_TEXTURE_COORD_DATA), _gluconst(NURBS_END_DATA), and _gluconst(NURBS_ERROR). +_phead(_param3) +Specifies the function that the callback calls. +.SH DESCRIPTION +_cmnd is used to define a callback to be used by a NURBS +object. +If the specified callback is already defined, then it is replaced. If +_param3 is NULL, then this callback will not get +invoked and the related data, if any, will be lost. +.P +Except the error callback, these callbacks are used by NURBS tessellator (when _gluconst(NURBS_MODE) is set to be _gluconst(NURBS_TESSELLATOR)) to return back the OpenGL +polygon primitives resulting from the tessellation. Note that there are two +versions of each callback: one with a user data pointer and one without. If both versions for a particular callback are specified then the callback with +the user data pointer will be used. Note that ``userData'' is a copy of the pointer that was specified at the last call to _cmnd(NurbsCallbackData). +.P +The error callback function is effective no matter which value that +_gluconst(NURBS_MODE) is set to. +All other callback functions are effective only when _gluconst(NURBS_MODE) +is set to _gluconst(NURBS_TESSELLATOR). +.P +The legal callbacks are as follows: +.TP 10 +_gluconst(NURBS_BEGIN) +The begin callback indicates the start of a primitive. The function +takes a single argument of type GLenum, which can be one of +_const(LINES), _const(LINE_STRIP), _const(TRIANGLE_FAN), _const(TRIANGLE_STRIP), _const(TRIANGLES), or _const(QUAD_STRIP). The +default begin callback function is NULL. The function prototype +for this callback looks like: +.RS +.Ex +void begin ( GLenum type ); +.Ee +.RE +.TP +_gluconst(NURBS_BEGIN_DATA) +The same as the _gluconst(NURBS_BEGIN) callback except that it takes an +additional pointer argument. This pointer is a copy of the pointer that +was specified at the last call to _cmnd(NurbsCallbackData). The +default callback function is NULL. The function prototype for this +callback function looks like: +.RS +.Ex +void beginData (GLenum type, void *userData); +.Ee +.RE +.TP +_gluconst(NURBS_VERTEX) +The vertex callback indicates a vertex of the primitive. The +coordinates of the vertex are stored in the parameter ``vertex''. All +the generated vertices have dimension 3, that is, homogeneous +coordinates have been transformed into affine coordinates. The default +vertex callback function is NULL. The function prototype for this +callback function looks like: +.RS +.Ex +void vertex ( GLfloat *vertex ); +.Ee +.RE +.TP +_gluconst(NURBS_VERTEX_DATA) +This is the same as the _gluconst(NURBS_VERTEX) callback, except that +it takes an additional pointer argument. This pointer is a copy of the +pointer that was specified at the last call to +_cmnd(NurbsCallbackData). The default callback function is NULL. The +function prototype for this callback function looks like: +.RS +.Ex +void vertexData ( GLfloat *vertex, void *userData ); +.Ee +.RE +.TP +_gluconst(NURBS_NORMAL) +The normal callback is invoked as the vertex normal is generated. +The components of the normal are stored in the parameter ``normal''. +In the case of a NURBS curve, the callback function is effective only when +the user provides a normal map (_const(MAP1_NORMAL)). +In the case of a NURBS surface, if a normal map (_const(MAP2_NORMAL)) is provided, then the generated normal is computed from the normal map. +If a normal map is not provided then a surface normal is computed in +a manner similar to that described for evaluators when _const(AUTO_NORMAL) +is enabled. +.bp +The default normal callback function is NULL. The function +prototype for this callback function looks like: +.RS +.Ex +void normal ( GLfloat *normal ); +.Ee +.RE +.TP +_gluconst(NURBS_NORMAL_DATA) +The same as the _gluconst(NURBS_NORMAL) callback except that it +takes an additional pointer argument. This pointer is a copy of the pointer +that was specified at the last call to _cmnd(NurbsCallbackData). The default callback function is NULL. The function prototype for this callback function looks like: +.RS +.Ex +void normalData ( GLfloat *normal, void *userData ); +.Ee +.RE +.TP +_gluconst(NURBS_COLOR) +The color callback is invoked as the color of a vertex is generated. +The components of the color are stored in the parameter ``color''. +This callback is effective only when the user provides a color map +(_const(MAP1_COLOR_4) or _const(MAP2_COLOR_4)). ``color'' contains four components: R,G,B,A. The default color callback function is NULL. The prototype for +this callback function looks like: +.RS +.Ex +void color ( GLfloat *color ); +.Ee +.RE +.TP +_gluconst(NURBS_COLOR_DATA) +The same as the _gluconst(NURBS_COLOR) callback except that it +takes an additional pointer argument. This pointer is a copy of the pointer +that was specified at the last call to _cmnd(NurbsCallbackData). The default callback function is NULL. The function prototype for this callback function looks like: +.RS +.Ex +void colorData ( GLfloat *color, void *userData ); +.Ee +.RE +.TP +_gluconst(NURBS_TEXTURE_COORD) +The texture callback is invoked as the texture coordinates +of a vertex are generated. These coordinates are stored in the parameter +``texCoord''. The number of texture coordinates can be 1, 2, 3, or 4 depending +on which type of texture map is specified +(_const(MAP1_TEXTURE_COORD_1), +_const(MAP1_TEXTURE_COORD_2), +_const(MAP1_TEXTURE_COORD_3), +_const(MAP1_TEXTURE_COORD_4), +_const(MAP2_TEXTURE_COORD_1), +_const(MAP2_TEXTURE_COORD_2), +_const(MAP2_TEXTURE_COORD_3), +_const(MAP2_TEXTURE_COORD_4)). +If no texture map is specified, this callback function will not be called. +.bp +The default texture callback function is NULL. The function prototype +for this callback function looks like: +.RS +.Ex +void texCoord ( GLfloat *texCoord ); +.Ee +.RE +.TP + _gluconst(NURBS_TEXTURE_COORD_DATA) +This is the same as the _gluconst(NURBS_TEXTURE_COORD) callback, except that it +takes an additional pointer argument. This pointer is a copy of the pointer +that was specified at the last call to _cmnd(NurbsCallbackData). The default callback function is NULL. The function prototype for this callback function looks like: +.RS +.Ex +void texCoordData (GLfloat *texCoord, void *userData); +.Ee +.RE +.TP +_gluconst(NURBS_END) +The end callback is invoked at the end of a primitive. The default end callback function is NULL. The function prototype for this callback function looks like: +.RS +.Ex +void end ( void ); +.Ee +.RE +.TP +_gluconst(NURBS_END_DATA) +This is the same as the _gluconst(NURBS_END) callback, except that it +takes an additional pointer argument. This pointer is a copy of the pointer +that was specified at the last call to _cmnd(NurbsCallbackData). The default callback function is NULL. The function prototype for this callback function looks like: +.RS +.Ex +void endData ( void *userData ); +.Ee +.RE +.TP +_gluconst(NURBS_ERROR) +The error function is called when an error is encountered. +Its single argument +is of type GLenum, and it indicates the specific error that occurred. +There are 37 errors unique to NURBS named +_gluconst(NURBS_ERROR1) through _gluconst(NURBS_ERROR37). +Character strings describing these errors can be retrieved with +_cmnd(ErrorString). +.bp +.SH NOTES +_cmnd is available only if the GLU version is 1.2 or greater. +.P +GLU version 1.2 supports only the _gluconst(ERROR) parameter for +_param2. The _gluconst(ERROR) value is deprecated in GLU version 1.3 in +favor of _gluconst(NURBS_ERROR). All other accepted values for _param3 +are available only if the GLU version is 1.3 or greater. +.SH SEE ALSO +_cmnd(ErrorString), +_cmnd(NewNurbsRenderer), +_cmnd(NurbsCallbackData), +_cmnd(NurbsProperty) + |