glEnd man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

GLBEGIN(3gl)							  GLBEGIN(3gl)

NAME
       glBegin, glEnd - delimit the vertices of a primitive or a group of like
       primitives

C SPECIFICATION
       void glBegin( GLenum mode )

PARAMETERS
       mode  Specifies the primitive or primitives that will be	 created  from
	     vertices presented between glBegin and the subsequent glEnd.  Ten
	     symbolic	constants   are	  accepted:    GL_POINTS,    GL_LINES,
	     GL_LINE_STRIP,   GL_LINE_LOOP,  GL_TRIANGLES,  GL_TRIANGLE_STRIP,
	     GL_TRIANGLE_FAN, GL_QUADS, GL_QUAD_STRIP, GL_POLYGON, and GL_TRI‐
	     ANGLE_LIST_SUN

C SPECIFICATION
       void glEnd( void )

DESCRIPTION
       glBegin	and  glEnd  delimit  the vertices that define a primitive or a
       group of like primitives.  glBegin accepts a single argument that spec‐
       ifies  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:

       GL_POINTS	    Treats  each  vertex  as a single point.  Vertex n
			    defines point n.  N points are drawn.

       GL_LINES		    Treats each pair of	 vertices  as  an  independent
			    line segment.  Vertices 2n-1 and 2n define line n.
			    N/2 lines are drawn.

       GL_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.

       GL_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.

       GL_TRIANGLES	    Treats each triplet of vertices as an  independent
			    triangle.  Vertices 3n-2, 3n-1, and 3n define tri‐
			    angle n.  N/3 triangles are drawn.

       GL_TRIANGLE_STRIP    Draws a connected group of triangles.  One	trian‐
			    gle 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.

       GL_TRIANGLE_FAN	    Draws  a connected group of triangles.  One trian‐
			    gle 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.

       GL_QUADS		    Treats each group of four vertices as an  indepen‐
			    dent  quadrilateral.   Vertices  4n-3, 4n-2, 4n-1,
			    and 4n define quadrilateral n.  N/4 quadrilaterals
			    are drawn.

       GL_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  quadrilat‐
			    eral  from	strip data is different from that used
			    with independent data.

       GL_POLYGON	    Draws  a  single,  convex  polygon.	  Vertices   1
			    through N define this polygon.

       GL_TRIANGLE_LIST_SUN Draws  a  series  of  triangles that are connected
			    according to the replacement codes associated with
			    each  vertex in the list. As with a triangle strip
			    and a  triangle  fan,  the	first  three  vertices
			    define  a triangle. If the replacement code speci‐
			    fies GL_REPLACE_OLDEST_SUN,	 then  vertices	 2,3,4
			    will  define  the  next triangle; hence a triangle
			    strip will be drawn. If the replacement code spec‐
			    ifies  GL_REPLACE_MIDDLE_SUN,  then vertices 1,3,4
			    will define the next triangle;  hence  a  triangle
			    fan	 will be drawn. If the replacement code speci‐
			    fies  GL_RESTART_SUN,  then	 vertices  4,5,6  will
			    define the next triangle, hence an isolated trian‐
			    gle will be drawn.

       Only a subset of GL commands can be used	 between  glBegin  and	glEnd.
       The commands are glVertex, glColor, glIndex, glNormal, glTexCoord, glE‐
       valCoord,  glEvalPoint,	glArrayElement,	 glMaterial,  glEdgeFlag,  and
       glReplacementCodeSUN.   Also,  it  is  acceptable  to use glCallList or
       glCallLists to execute display lists that include  only	the  preceding
       commands.   If  any  other  GL  command is executed between glBegin and
       glEnd, the error flag is set and the command is ignored.

       Regardless of the value chosen for mode, there is no limit to the  num‐
       ber  of vertices that can be defined between glBegin and glEnd.	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.

       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, 3
       for a polygon, 3 for a triangle list.  Modes  that  require  a  certain
       multiple	 of vertices are GL_LINES (2), GL_TRIANGLES (3), GL_QUADS (4),
       and GL_QUAD_STRIP (2).

ERRORS
       GL_INVALID_ENUM is generated if mode is set to an unaccepted value.

       GL_INVALID_OPERATION is generated if  glBegin  is  executed  between  a
       glBegin and the corresponding execution of glEnd.

       GL_INVALID_OPERATION  is	 generated  if glEnd is executed without being
       preceded by a glBegin.

       GL_INVALID_OPERATION is generated if a  command	other  than  glVertex,
       glColor, glIndex, glNormal, glTexCoord, glReplacementCodeSUN, glEvalCo‐
       ord, glEvalPoint, glArrayElement, glMaterial,  glEdgeFlag,  glCallList,
       or  glCallLists	is  executed  between the execution of glBegin and the
       corresponding execution glEnd.

       Execution  of  glEnableClientState,  glDisableClientState,  glEdgeFlag‐
       Pointer,	 glTexCoordPointer,  glColorPointer, glIndexPointer, glNormal‐
       Pointer, glReplacementCodePointerSUN,
       glVertexPointer, glInterleavedArrays, or glPixelStore  is  not  allowed
       after a call to glBegin and before the corresponding call to glEnd, but
       an error may or may not be generated.

SEE ALSO
       glArrayElement, glCallList, glCallLists, glColor, glEdgeFlag, glEvalCo‐
       ord,
       glEvalPoint,  glIndex, glMaterial, glNormal, glTexCoord, glReplacement‐
       CodeSUN, glVertex

				   15 Mar 97			  GLBEGIN(3gl)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net