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

  
 
  

home | help
gleSetJoinStyle(3GLE)		       GLE		   gleSetJoinStyle(3GLE)

NAME
     gleSetJoinStyle, gleGetJoinStyle - Query and Set the GLE join style flags.

SYNTAX
     void gleSetJoinStyle (int style);
     int gleGetJoinStyle (void);

ARGUMENTS
     style     bitwise OR of flags

DESCRIPTION
     Query  and  set  the GLE join style flags. This word is a bitwise OR of the
     flags described below.

     The initial join style is TUBE_JN_ANGLE | TUBE_JN_CAP | TUBE_NORM_FACET.

     Extrusion Join Styles

     TUBE_JN_RAW
	    Draw polycylinders, polycones,  extrusions,  etc.  with  no  special
	    treatment of the extrusion ends.

     TUBE_JN_ANGLE
	    Draw  polycylinders,  polycones,  extrusions,  etc. by extending the
	    different segments until they butt into each other with  an  angular
	    style.

     TUBE_JN_CUT
	    Draw  polycylinders, polycones, extrusions, etc. by joining together
	    the different segments and slicing off the joint at half  the  angle
	    between  the  segments.  A cap is drawn. Note that the slicing plane
	    runs through the origin of the contour coordinate system. Thus,  the
	    amount of slice can be varied by offsetting the contour with respect
	    to the origin.

	    Note  that	when  two segments meet at a shallow angle, the cut join
	    style will potentially shave off a whole lot of the contour, leading
	    to "surprising" results...

     TUBE_JN_ROUND
	    Joints will be rounded. Strictly speaking, the  part  of  the  joint
	    above  the	origin	will  be rounded. The part below the origin will
	    come together in an angular join.

     TUBE_JN_MASK
	    Mask bits. This can be used to mask off the bit field  that  defines
	    the join style.

	    End Caps

     TUBE_JN_CAP
	    If this is set, a cap will be drawn at each end of the extrusion.

	    Automatic Normal Vector Generation

     TUBE_NORM_FACET
	    A  normal vector is generated per facet. Useful for having an extru-
	    sion have a "faceted" look, such as when extruding a square --  each
	    of the four sides of the square will look flat.

     TUBE_NORM_EDGE
	    Normal  vectors  are  generated so that they lie along edges. Useful
	    for making angular things look rounded under lighting. For	example,
	    when  extruding  a hexagon and using this flag, the hexagonal extru-
	    sion will look (more like a) smooth perfectly round cylinder, rather
	    than a six-sided shape.

     TUBE_NORM_PATH_EDGE
	    Normal vectors are generated so that they both lie on edges, and  so
	    that they interpolate between neighboring segments. Useful for draw-
	    ing  "spaghetti"  --  extrusions that follow a spline path.  Because
	    the spline path must be "tessellated" into small straight  segments,
	    each segment will look straight unless this flag is set.

     TUBE_NORM_MASK
	    A mask useful for masking out the "norm" bits.

	    Closed or Open Contours

     TUBE_CONTOUR_CLOSED
	    If	this  bit is set, the contour will be treated as a "closed" con-
	    tour, where the last point connects back up to the first. It is use-
	    ful to set this flag when drawing closed shapes  (such  as	extruded
	    cylinders,	star-shapes,  I-Beams, etc. When drawing open extrusions
	    (e.g.  corrugated sheet metal), you DON'T want to set this flag.

BUGS
     Multiple threads using GLE share a single global join style.

SEE ALSO
     gleExtrusion, gleTextureMode

AUTHOR
     Linas Vepstas (linas@fc.net)

GLE				       3.6		   gleSetJoinStyle(3GLE)

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

home | help