@@ -118,6 +118,8 @@ def _recache(self):
118118        self ._alt_path  =  None 
119119        self ._alt_transform  =  None 
120120        self ._snap_threshold  =  None 
121+         self ._joinstyle  =  'round' 
122+         self ._capstyle  =  'butt' 
121123        self ._filled  =  True 
122124        self ._marker_function ()
123125
@@ -136,6 +138,12 @@ def set_fillstyle(self, fillstyle):
136138        self ._fillstyle  =  fillstyle 
137139        self ._recache ()
138140
141+     def  get_joinstyle (self ):
142+         return  self ._joinstyle 
143+ 
144+     def  get_capstyle (self ):
145+         return  self ._capstyle 
146+ 
139147    def  get_marker (self ):
140148        return  self ._marker 
141149
@@ -201,11 +209,14 @@ def _set_tuple_marker(self):
201209            symstyle  =  marker [1 ]
202210            if  symstyle  ==  0 :
203211                self ._path  =  Path .unit_regular_polygon (numsides )
212+                 self ._joinstyle  =  'miter' 
204213            elif  symstyle  ==  1 :
205214                self ._path  =  Path .unit_regular_star (numsides )
215+                 self ._joinstyle  =  'bevel' 
206216            elif  symstyle  ==  2 :
207217                self ._path  =  Path .unit_regular_asterisk (numsides )
208218                self ._filled  =  False 
219+                 self ._joinstyle  =  'bevel' 
209220            elif  symstyle  ==  3 :
210221                self ._path  =  Path .unit_circle ()
211222            self ._transform  =  Affine2D ().scale (0.5 ).rotate_deg (rotation )
@@ -269,8 +280,10 @@ def _set_circle(self, reduction = 1.0):
269280
270281    def  _set_pixel (self ):
271282        self ._path  =  Path .unit_rectangle ()
272-         self ._transform  =  Affine2D ().translate (- 0.5 , 0.5 )
283+         self ._transform  =  Affine2D ().translate (- 0.5 , - 0.5 ) \
284+                           .scale (0.5 , 0.5 ).translate (0.5 , 0.5 )
273285        self ._snap_threshold  =  False 
286+         self ._joinstyle  =  'miter' 
274287
275288    def  _set_point (self ):
276289        self ._set_circle (reduction  =  self ._point_size_reduction )
@@ -319,6 +332,8 @@ def _set_triangle(self, rot, skip):
319332
320333            self ._alt_transform  =  self ._transform 
321334
335+         self ._joinstyle  =  'miter' 
336+ 
322337    def  _set_triangle_up (self ):
323338        return  self ._set_triangle (0.0 , 0 )
324339
@@ -351,6 +366,8 @@ def _set_square(self):
351366            self ._transform .rotate_deg (rotate )
352367            self ._alt_transform  =  self ._transform 
353368
369+         self ._joinstyle  =  'miter' 
370+ 
354371    def  _set_diamond (self ):
355372        self ._transform  =  Affine2D ().translate (- 0.5 , - 0.5 ).rotate_deg (45 )
356373        self ._snap_threshold  =  5.0 
@@ -369,6 +386,8 @@ def _set_diamond(self):
369386            self ._transform .rotate_deg (rotate )
370387            self ._alt_transform  =  self ._transform 
371388
389+         self ._joinstyle  =  'miter' 
390+ 
372391    def  _set_thin_diamond (self ):
373392        self ._set_diamond ()
374393        self ._transform .scale (0.6 , 1.0 )
@@ -403,6 +422,8 @@ def _set_pentagon(self):
403422            self ._alt_path  =  mpath_alt 
404423            self ._alt_transform  =  self ._transform 
405424
425+         self ._joinstyle  =  'miter' 
426+ 
406427    def  _set_star (self ):
407428        self ._transform  =  Affine2D ().scale (0.5 )
408429        self ._snap_threshold  =  5.0 
@@ -432,6 +453,8 @@ def _set_star(self):
432453            self ._alt_path  =  mpath_alt 
433454            self ._alt_transform  =  self ._transform 
434455
456+         self ._joinstyle  =  'bevel' 
457+ 
435458    def  _set_hexagon1 (self ):
436459        self ._transform  =  Affine2D ().scale (0.5 )
437460        self ._snap_threshold  =  5.0 
@@ -464,6 +487,8 @@ def _set_hexagon1(self):
464487            self ._alt_path  =  mpath_alt 
465488            self ._alt_transform  =  self ._transform 
466489
490+         self ._joinstyle  =  'miter' 
491+ 
467492    def  _set_hexagon2 (self ):
468493        self ._transform  =  Affine2D ().scale (0.5 ).rotate_deg (30 )
469494        self ._snap_threshold  =  5.0 
@@ -496,6 +521,8 @@ def _set_hexagon2(self):
496521            self ._alt_path  =  mpath_alt 
497522            self ._alt_transform  =  self ._transform 
498523
524+         self ._joinstyle  =  'miter' 
525+ 
499526    def  _set_octagon (self ):
500527        self ._transform  =  Affine2D ().scale (0.5 )
501528        self ._snap_threshold  =  5.0 
@@ -520,6 +547,8 @@ def _set_octagon(self):
520547            self ._path  =  self ._alt_path  =  half 
521548            self ._alt_transform  =  self ._transform .frozen ().rotate_deg (180.0 )
522549
550+         self ._joinstyle  =  'miter' 
551+ 
523552    _line_marker_path  =  Path ([[0.0 , - 1.0 ], [0.0 , 1.0 ]])
524553    def  _set_vline (self ):
525554        self ._transform  =  Affine2D ().scale (0.5 )
@@ -605,24 +634,28 @@ def _set_caretdown(self):
605634        self ._snap_threshold  =  3.0 
606635        self ._filled  =  False 
607636        self ._path  =  self ._caret_path 
637+         self ._joinstyle  =  'miter' 
608638
609639    def  _set_caretup (self ):
610640        self ._transform  =  Affine2D ().scale (0.5 ).rotate_deg (180 )
611641        self ._snap_threshold  =  3.0 
612642        self ._filled  =  False 
613643        self ._path  =  self ._caret_path 
644+         self ._joinstyle  =  'miter' 
614645
615646    def  _set_caretleft (self ):
616647        self ._transform  =  Affine2D ().scale (0.5 ).rotate_deg (270 )
617648        self ._snap_threshold  =  3.0 
618649        self ._filled  =  False 
619650        self ._path  =  self ._caret_path 
651+         self ._joinstyle  =  'miter' 
620652
621653    def  _set_caretright (self ):
622654        self ._transform  =  Affine2D ().scale (0.5 ).rotate_deg (90 )
623655        self ._snap_threshold  =  3.0 
624656        self ._filled  =  False 
625657        self ._path  =  self ._caret_path 
658+         self ._joinstyle  =  'miter' 
626659
627660    _x_path  =  Path ([[- 1.0 , - 1.0 ], [1.0 , 1.0 ],
628661                    [- 1.0 , 1.0 ], [1.0 , - 1.0 ]],
0 commit comments