aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl')
-rw-r--r--nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl229
1 files changed, 229 insertions, 0 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl
new file mode 100644
index 000000000..6e08bb1b0
--- /dev/null
+++ b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/begin.gl
@@ -0,0 +1,229 @@
+_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_
+_header(Begin,delimit the vertices of a primitive or a group of like primitives)
+_names(Begin)
+.EQ
+delim $$
+.EN
+.SH PARAMETERS
+_phead(_param1)
+Specifies the primitive or primitives that will be created from vertices
+presented between _cmnd(Begin) and the subsequent _cmnd(End).
+Ten symbolic constants are accepted:
+_const(POINTS),
+_const(LINES),
+_const(LINE_STRIP),
+_const(LINE_LOOP),
+_const(TRIANGLES),
+_const(TRIANGLE_STRIP),
+_const(TRIANGLE_FAN),
+_const(QUADS),
+_const(QUAD_STRIP), and
+_const(POLYGON).
+_names(End)
+.SH DESCRIPTION
+_cmnd(Begin) and _cmnd(End) delimit the vertices that define a primitive or
+a group of like primitives.
+_cmnd(Begin) accepts a single argument that specifies in which of ten ways the
+vertices are interpreted.
+Taking $n$ as an integer count starting at one,
+and $N$ as the total number of vertices specified,
+the interpretations are as follows:
+.TP 23
+_const(POINTS)
+Treats each vertex as a single point.
+Vertex $n$ defines point $n$.
+$N$ points are drawn.
+.TP
+_const(LINES)
+Treats each pair of vertices as an independent line segment.
+Vertices $2n^-^1$ and $2n$ define line $n$.
+$N/2$ lines are drawn.
+.TP
+_const(LINE_STRIP)
+Draws a connected group of line segments from the first vertex
+to the last.
+Vertices $n$ and $n~+~1$ define line $n$.
+$N^-^1$ lines are drawn.
+.TP
+_const(LINE_LOOP)
+Draws a connected group of line segments from the first vertex
+to the last,
+then back to the first.
+Vertices $n$ and $n~+~1$ define line $n$.
+The last line, however, is defined by vertices $N$ and $1$.
+$N$ lines are drawn.
+.TP
+_const(TRIANGLES)
+Treats each triplet of vertices as an independent triangle.
+Vertices $3n^-^2$, $3n^-^1$, and $3n$ define triangle $n$.
+$N/3$ triangles are drawn.
+.BP
+.TP
+_const(TRIANGLE_STRIP)
+Draws a connected group of triangles. One triangle is defined for each
+vertex presented after the first two vertices. For odd $n$, vertices
+$n$, $n~+~1$, and $n~+~2$ define triangle $n$. For even $n$, vertices
+$n~+~1$, $n$, and $n~+~2$ define triangle $n$. $N^-^2$ triangles are
+drawn.
+.TP
+_const(TRIANGLE_FAN)
+Draws a connected group of triangles.
+One triangle is defined for each vertex presented after the first two vertices.
+Vertices $1$,
+$n~+~1$,
+and $n~+~2$ define triangle $n$.
+$N^-^2$ triangles are drawn.
+.TP
+_const(QUADS)
+Treats each group of four vertices as an independent quadrilateral.
+Vertices $4n^-^3$, $4n^-^2$, $4n^-^1$, and $4n$
+define quadrilateral $n$.
+$N/4$ quadrilaterals are drawn.
+.TP
+_const(QUAD_STRIP)
+Draws a connected group of quadrilaterals.
+One quadrilateral is defined for each pair of vertices presented
+after the first pair.
+Vertices $2n^-^1$, $2n$, $2n~+~2$, and $2n~+~1$ define quadrilateral $n$.
+$N/2^-^1$ quadrilaterals are drawn.
+Note that the order in which vertices are used to construct a quadrilateral
+from strip data is different from that used with independent data.
+.TP
+_const(POLYGON)
+Draws a single,
+convex polygon.
+Vertices $1$ through $N$ define this polygon.
+.P
+Only a subset of GL commands can be used between _cmnd(Begin) and _cmnd(End).
+The commands are
+_cmnd(Vertex),
+_cmnd(Color),
+_cmnd(Index),
+_cmnd(Normal),
+_cmnd(TexCoord),
+_cmnd(EvalCoord),
+_cmnd(EvalPoint),
+_cmnd(ArrayElement),
+_cmnd(Material), and
+_cmnd(EdgeFlag).
+Also,
+it is acceptable to use
+_cmnd(CallList) or
+_cmnd(CallLists) to execute
+display lists that include only the preceding commands.
+If any other GL command is executed between _cmnd(Begin) and _cmnd(End),
+the error flag is set and the command is ignored.
+.P
+Regardless of the value chosen for _param1(1),
+there is no limit to the number of vertices that can be defined
+between _cmnd(Begin) and _cmnd(End).
+Lines,
+triangles,
+quadrilaterals,
+and polygons that are incompletely specified are not drawn.
+Incomplete specification results when either too few vertices are
+provided to specify even a single primitive or when an incorrect multiple
+of vertices is specified. The incomplete primitive is ignored; the rest are drawn.
+.P
+The minimum specification of vertices
+for each primitive is as follows:
+1 for a point,
+2 for a line,
+3 for a triangle,
+4 for a quadrilateral,
+and 3 for a polygon.
+Modes that require a certain multiple of vertices are
+_const(LINES) (2),
+_const(TRIANGLES) (3),
+_const(QUADS) (4),
+and _const(QUAD_STRIP) (2).
+.SH ERRORS
+_const(INVALID_ENUM) is generated if _param1(1) is set to an unaccepted value.
+.P
+_const(INVALID_OPERATION) is generated if _cmnd(Begin) is executed between a
+_cmnd(Begin)
+and the corresponding execution of _cmnd(End).
+.P
+_const(INVALID_OPERATION) is generated if _cmnd(End) is executed without being
+preceded by a _cmnd(Begin).
+.P
+_const(INVALID_OPERATION) is generated if a command other than
+_cmnd(Vertex),
+_cmnd(Color),
+_cmnd(Index),
+_cmnd(Normal),
+_cmnd(TexCoord),
+_cmnd(EvalCoord),
+_cmnd(EvalPoint),
+_cmnd(ArrayElement),
+_cmnd(Material),
+_cmnd(EdgeFlag),
+_cmnd(CallList), or
+_cmnd(CallLists) is executed between
+the execution of _cmnd(Begin) and the corresponding
+execution _cmnd(End).
+.P
+Execution of
+_cmnd(EnableClientState),
+_cmnd(DisableClientState),
+_cmnd(EdgeFlagPointer),
+_cmnd(TexCoordPointer),
+_cmnd(ColorPointer),
+_cmnd(IndexPointer),
+_cmnd(NormalPointer),
+.br
+_cmnd(VertexPointer),
+_cmnd(InterleavedArrays), or
+_cmnd(PixelStore) is not allowed after a call to _cmnd(Begin) and before
+the corresponding call to _cmnd(End),
+but an error may or may not be generated.
+.SH SEE ALSO
+_cmnd(ArrayElement),
+_cmnd(CallList),
+_cmnd(CallLists),
+_cmnd(Color),
+_cmnd(EdgeFlag),
+_cmnd(EvalCoord),
+.br
+_cmnd(EvalPoint),
+_cmnd(Index),
+_cmnd(Material),
+_cmnd(Normal),
+_cmnd(TexCoord),
+_cmnd(Vertex)
+
+