Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
gle(3GLE)			      GLE			     gle(3GLE)

NAME
       gle - an	introduction to	the GLE	Tubing & Extrusions Library

SYNOPSIS
       #include	<GL/tube.h>

DESCRIPTION
       The GLE Tubing and Extrusion Library is a graphics application program-
       ming  interface (API). The library consists of a	number of "C" language
       subroutines for drawing tubing and extrusions. The library is  distrib-
       uted  in	 source	code form, in a	package	that includes documentation, a
       VRML proposal, Makefiles, and full source code  and  header  files.  It
       uses  the  OpenGL (TM) programming API to perform the actual drawing of
       the tubing and extrusions.

       A "sweep" or "extrusion"	is a 2D	contour	(polyline) that	 is  swept  or
       extruded	 along	a  3D  path (polyline).	For example, sweeping a	circle
       along a straight	line will generate  a  cylinder.   Sweeping  a	circle
       along a circular	path will generate a doughnut (torus).

       The library also	includes a set of utility routines for drawing some of
       the more	common extruded	shapes:	a polycylinder,	a polycone, a general-
       ized  torus  (circle  swept along a helical path), a "helix" (arbitrary
       contour swept along a helical path) and a  "lathe"  (arbitrary  contour
       swept  along  a	helical	 path,	with  torsion used to keep the contour
       aligned).

       The most	general	extrusion supported by this library  allows  an	 arbi-
       trary 2D	contour	to be swept around an arbitrary	3D path. A set of nor-
       mal  vectors  can be specified to go along with the contour; the	normal
       vectors determine the appearance	of the contour when lighting is	turned
       on. A set of colors and affine matrices can be specified	 to  go	 along
       with  the  3D  path.  The colors	are used to color along	the path.  The
       affine matrices are used	to operate on  the  contour  as	 it  is	 swept
       along. If no affine matrices are	specified, the contour is extruded us-
       ing  the	 mathematical  concept	of "parallel translation" or "Gaussian
       translation". That is, the contour is moved (and	drawn) along  the  ex-
       trusion path in a "straight" manner. If there are affine	matrices, they
       are applied to the contour at each extrusion segment before the segment
       is drawn.

       The affine matrices allow work in a quasi-non-Euclidean space. They es-
       sentially  allow	 the contour to	be distorted as	it is swept along. The
       allow the contour to be rotated,	 translated  and  rescaled  as	it  is
       drawn.  For  example, a rescaling will turn a polycylinder into a poly-
       cone, since the circle that is being extruded is	scaled to a  different
       size at each extrusion vertex. A	rotation allows	the contour to be spun
       around while it is being	extruded, thus for instance allowing drill-bit
       type  shapes to be drawn. A translation allows the appearance of	shear-
       ing in real space; that is, taking a contour and	displacing it, without
       otherwise bending it. Note that the affines are 2x3 matrices,  not  3x4
       matrices, since they apply to the 2D contour as it is being extruded.

WEB SITE
       http://linas.org/gle/index.html

SEE ALSO
       gleExtrusion, gleHelicoid, gleLathe, glePolyCone, glePolyCylinder, gle-
       Screw,  gleSetJoinStyle,	 gleSpiral, gleSuperExtrusion, gleTextureMode,
       gleToroid, gleTwistExtrusion, gleTwistExtrusion,	gleSuperExtrusion

AUTHOR
       Linas Vepstas (linas@fc.net)

GLE				      3.6			     gle(3GLE)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gle&sektion=3&manpath=FreeBSD+Ports+15.0.quarterly>

home | help