Windows 3.1 Device Drivers (ddag31qh.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
SETLINEJOIN
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
#define SETLINEJOIN 22 
short Control(lpDevice, SETLINEJOIN, lpInData, lpOutData)
LPPDEVICE lpDevice;
LPWORD lpInData;
LPWORD lpOutData;
 
The SETLINEJOIN escape specifies how to join two lines that meet at an
angle.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
 
lpDevice   Points to a PDEVICE structure specifying the destination device.
 
lpInData   Points to a 16-bit variable that specifies the newline join type.
           If this parameter is NULL, the escape does not change the line
           join. The variable can contain one of the following values.
 
           Value  Meaning
           ─────────────────────────────────────────────────────────────────
           0      Miter join. The outer edges of the strokes for the two
                  segments are extended until they meet at an angle, as in a
                  picture frame. If the segments meet at too sharp of an
                  angle, a bevel join is used instead; this is controlled by
                  the miter limit established by the SETMITERLIMIT escape.
 
           1      Round join. A circular arc with a diameter equal to the
                  line width is drawn around the point where the segments
                  meet, and is filled in, producing a rounded corner. The
                  stroke actually draws a full circle at this point. If path
                  segments shorter than one-half the line width meet at
                  sharp angles, an unintentional "wrong side" of this circle
                  may appear.
 
           2      Bevel join. The meeting path segments are finished with
                  butt-end caps (same as set by the SETLINECAP escape);
                  then, the resulting notch beyond the ends of the segments
                  is filled with a triangle.
 
lpOutData  Points to a 16-bit variable that receives the previous line-join
           type. If this parameter is NULL, the escape does not return the
           previous line-join type.
 
Return Value
 
The return value is TRUE if the escape is successful. Otherwise, it is
FALSE.
 
Comments
 
Join styles are significant only at points at which consecutive segments of
a path connect at an angle. Curved lines are actually rendered as sequences
of straight line segments, and the current line join is applied to the
"corners" between those segments. However, for typical values of the
flatness parameter, the corners are so shallow that the difference between
join styles is not visible.
 
See Also
 
SETLINECAP, SETMITERLIMIT, PDEVICE
 
 
                                      ♦