Unix/Linux Go Back    


CentOS 7.0 - man page for glutessvertex (centos section 3G)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


GLUTESSVERTEX(3G)			  OpenGL Manual 			GLUTESSVERTEX(3G)

NAME
       gluTessVertex - specify a vertex on a polygon

C SPECIFICATION
       void gluTessVertex(GLUtesselator* tess, GLdouble * location, GLvoid* data);

PARAMETERS
       tess
	   Specifies the tessellation object (created with gluNewTess()).

       location
	   Specifies the location of the vertex.

       data
	   Specifies an opaque pointer passed back to the program with the vertex callback (as
	   specified by gluTessCallback()).

DESCRIPTION
       gluTessVertex describes a vertex on a polygon that the program defines. Successive
       gluTessVertex calls describe a closed contour. For example, to describe a quadrilateral,
       gluTessVertex should be called four times.  gluTessVertex can only be called between
       gluTessBeginContour() and gluTessEndContour().

       data normally points to a structure containing the vertex location, as well as other
       per-vertex attributes such as color and normal. This pointer is passed back to the user
       through the GLU_TESS_VERTEX or GLU_TESS_VERTEX_DATA callback after tessellation (see the
       gluTessCallback() reference page).

EXAMPLE
       A quadrilateral with a triangular hole in it can be described as follows:

	   gluTessBeginPolygon(tobj, NULL);
	      gluTessBeginContour(tobj);
		 gluTessVertex(tobj, v1, v1);
		 gluTessVertex(tobj, v2, v2);
		 gluTessVertex(tobj, v3, v3);
		 gluTessVertex(tobj, v4, v4);
	      gluTessEndContour(tobj);
	      gluTessBeginContour(tobj);
		 gluTessVertex(tobj, v5, v5);
		 gluTessVertex(tobj, v6, v6);
		 gluTessVertex(tobj, v7, v7);
	      gluTessEndContour(tobj);
	   gluTessEndPolygon(tobj);

NOTES
       It is a common error to use a local variable for location or data and store values into it
       as part of a loop. For example:

	   for (i = 0; i < NVERTICES; ++i) {
	      GLdouble data[3];
	      data[0] = vertex[i][0];
	      data[1] = vertex[i][1];
	      data[2] = vertex[i][2];
	      gluTessVertex(tobj, data, data);
	   }

       This doesn't work. Because the pointers specified by location and data might not be
       dereferenced until gluTessEndPolygon() is executed, all the vertex coordinates but the
       very last set could be overwritten before tessellation begins.

       Two common symptoms of this problem are when the data consists of a single point (when a
       local variable is used for data) and a GLU_TESS_NEED_COMBINE_CALLBACK error (when a local
       variable is used for location).

SEE ALSO
       gluNewTess(), gluTessBeginContour(), gluTessBeginPolygon(), gluTessCallback(),
       gluTessEndPolygon(), gluTessNormal(), gluTessProperty()

COPYRIGHT
       Copyright (C) 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI
       Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.

AUTHORS
       opengl.org

opengl.org				    06/10/2014				GLUTESSVERTEX(3G)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 04:11 PM.