Provided by: libgle3-dev_3.1.0-7ubuntu2_amd64 bug

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 extrusion 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  extrusion  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  drawing  "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"  contour,  where  the
              last  point  connects  back  up  to  the  first. It is useful 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  (although  this  should  be
       easily fixable because GLE does use a centralized graphics context).

SEE ALSO

       gleExtrusion, gleTextureMode

AUTHOR

       Linas Vepstas (linas@linas.org)