+
    i8                     r   R t ^ RIt^ RIt^ RIHtHt ^ RIt^ RIt	^ RI
HtHtHtHtHtHtHtHtHt ^ RIHtHt ^ RIHt ^ RIHt ^ RIHtHtH t!H"t#H$t%H&t& R t'R t(R	 t)R
 t*]! R.R7      R 4       t+]! R.R7      R 4       t,R t-]! R.4      R 4       t.]! R.RR7      R 4       t/]! R.RR7      R 4       t0]	Pb                  Pe                  R4      R 4       t3]! R.RR7      R 4       t4R t5]! R.R7      R 4       t6R t7]! R.R]Pp                  ! 4       R 8X  d   ^ MR!R"7      R# 4       t9R$ t:]! R%.RRR&7      R' 4       t;]! R(.4      R) 4       t<]! R*.R+R]Pp                  ! 4       R 8X  d   ^ MR,R-7      R. 4       t=]! R.R7      R/ 4       t>]! R.R7      R0 4       t?R1 t@R2 tAR3 tBR4 tC]! R.R7      R5 4       tDR6 tER7 tF]! R8.R+R97      R: 4       tG]! R;.R+R97      R< 4       tHR= tI]P                  P                  R>RV4      R? 4       tL]! R@.R.RA7      RB 4       tM]! R@.R.RA7      RC 4       tN]! R@.R.RA7      RD 4       tORE tP]P                  P                  RFRW4      RG 4       tQRH tRRI tSRJ tTRK tURL tV]! RM.RRN.R+RRO7      RP 4       tW]! . RXOR7      RQ 4       tX]! . RXOR7      RR 4       tYRS tZ]! . RYOR7      RT 4       t[RU t\R# )Zz'
Tests specific to the patches module.
N)assert_almost_equalassert_array_equal)	AnnulusEllipsePatchPolygon	RectangleFancyArrowPatch
FancyArrowBoxStyleArc)image_comparisoncheck_figures_equal)Bbox)collectionscolorspatchespath
transformsrcParamsc                  $   ^ ^ .^ ^.^^..p V ^ ^ ..,           p\        V RR7      pVP                  4       '       g   Q h\        VP                  4       V4       VP	                  V 4       \        VP                  4       V4       \        VRR7      p\        VP                  4       V 4       VP	                  V4       \        VP                  4       V 4       \        V RR7      pVP                  4       '       d   Q h\        VP                  4       V 4       VP	                  V 4       \        VP                  4       V 4       \        VRR7      p\        VP                  4       V4       VP	                  V4       \        VP                  4       V4       R# )    TclosedFN)r   
get_closedr   get_xyset_xy)xyxyclosedps      }/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/matplotlib/tests/test_patches.pytest_Polygon_closer!      s2    a&1a&1a&	!BaVH}H 	4 A<<>>>qxxz8,HHRLqxxz8, 	'Aqxxz2&HHXqxxz2& 	5!A||~~qxxz2&HHRLqxxz2& 	&Aqxxz8,HHXqxxz8,    c                  F   ^
^.p ^p^pRp\        WV4      p\        VP                  4       V4       \        VP                  4       R4       RpVP	                  ^Z4       \        VP                  4       V4       \        VP                  4       R4       ^!p\
        P                  ! 4       P                  ! . V O\        P                  ! V4      N5!  pVP                  V4      pVP	                  V4       \        VP                  4       V4       V ^ ,          V^,          ,           V ^,          V^,          ,           .p \        WV4      p\        VP                  4       V4       RpVP	                  ^Z4       \        VP                  4       V4       \        VP                  4       V 4       ^!p\
        P                  ! 4       P                  ! . V O\        P                  ! V4      N5!  pVP                  V4      pVP	                  V4       \        VP                  4       V4       R# )
   N)r$      )   r&   )r'      )r$   r(   )g      %@   )r%   )r$   r)   )   r)   )r*   r&   )	        4@))      '@r,   )r-        5@)      #@r.   )r/   r,   )r   r   get_corners
get_center	set_anglemtransformsAffine2Drotate_aroundnpdeg2rad	transformr   r   )	locwidthheightcornersrectcorners_rotthetatellipses	            r    test_corner_centerrB   :   s   r(CEF 7GS(Dt'')73t(*5 9KNN2t'');7t()4 E,,EcE2::e3DEA++g&KNN5((*K8 q6EAIq6FQJ Cc&)G w**,g6 IKbw**,k:w))+S1 E,,EcE2::e3DEA++g&Ke++-{;r"   c            
         \        R^ ^ ^ R7      p \        V P                  4       RR.4       \        V P                  4       RR.4       \        R^^^R7      p \        V P                  4       V P                  ^ ,          V P
                  ^,          \        P                  ! ^4      ,          ,           V P                  ^,          V P
                  ^,          ,           3V P                  ^ ,          V P
                  ^,          \        P                  ! ^4      ,          ,
          V P                  ^,          V P
                  ^,          ,
          3.4       \        V P                  4       V P                  ^ ,          V P                  ^,          ,
          V P                  ^,          V P                  ^,          \        P                  ! ^4      ,          ,           3V P                  ^ ,          V P                  ^,          ,           V P                  ^,          V P                  ^,          \        P                  ! ^4      ,          ,
          3.4       \        P                  ! V P                  4       4      w  r\        P                  P                  W,           ^,          V P                  4       \        P                  ! V P                  4       4      w  r\        P                  P                  W,           ^,          V P                  4       \        RRRRR7      p \        P                  ! V P                  4       4      w  r\        P                  P                  W,           ^,          V P                  4       \        P                  ! V P                  4       4      w  r\        P                  P                  W,           ^,          V P                  4       R# )	r   r   r:   r;   anglegQ@gGz?gR1Q@Nr   r           rH   )gjt@g+η%)r   r   get_verticesget_co_verticescenterr:   r6   sqrtr;   arraytesting)rA   v1v2s      r    test_ellipse_verticesrQ   j   s   q!<G	Z  !	Z 
 q"=G q!GMMA$5
$BBq!GMMA$55
 q!GMMA$5
$BBq!GMMA$55		
 ! q!GNNQ$66q!GNNQ$6$CC
 q!GNNQ$66q!GNNQ$6$CC		
 XXg**,-FBJJ""BGq='..AXXg--/0FBJJ""BGq='..A)t5QGXXg**,-FBJJ""BGq='..AXXg--/0FBJJ""BGq='..Ar"   c                  6   \         P                  ! R R.4      p ^p^pRp\        WW#R7      p\        WV4      p\         P                  V,          R,          p\         P                  ! \         P
                  ! V4      \         P                  ! V4      ) .\         P                  ! V4      \         P
                  ! V4      ..4      p\         P                  ! WuP                  4       V ,
          4      P                  V ,           p\        VP                  4       V4       R# )      ?       @g      >@rE        f@N)r6   asarrayr   pirM   cossininner	get_vertsTr   )	r9   r:   r;   rE   rect1rect2	angle_radrotation_matrix	new_vertss	            r    test_rotate_rectrc      s    
**c3Z
 CEFE c&6E c&)E %Ihh	!2RVVI5F4F G!#	!2RVVI5F G I JO //*;c*ABDDsJI )95r"   png)
extensionsc                 v   V P                  4       pVP                  4       pRp^^re^p\        WEWgR7      pVP                  V4       VP                  4       V8X  g   Q h\        WEV4      p	V	P                  4       ^ 8X  g   Q hVP                  V	4       V	P	                  V4       V	P                  4       V8X  g   Q hR# )r   rU   NrF   )add_subplotr   	add_patch	get_angler2   )
fig_testfig_refax_testax_refr9   r:   r;   rE   rect_ref	rect_tests
   &&        r    test_rotate_rect_drawrp      s    ""$G  "F
C6EV9H
X5((( #f-I A%%%i  E)))r"   c           
      P   V P                  4       pVP                  4       pRpRRre\        WEV^R^ ^^.3R7      p\        WEV^R^ . RO3R7      pVP                  4       ^ ^^.38X  g   Q hVP                  4       ^ . RO38X  g   Q hVP                  V4       VP                  V4       \        WEV^R^ ^^.3R7      p	\        WEV^R^^^.3R7      p
V	P                  4       ^ ^^.38X  g   Q hV
P                  4       ^^^.38X  g   Q hVP                  V	4       VP                  V
4       R# )皙?皙?b)	linewidth	edgecolor	linestylerNrr   rr   )r      rz   r   )rg   r   get_linestylerh   )rj   rk   rl   rm   r9   r:   r;   rn   	rect_ref2ro   
rect_test2s   &&         r    test_dash_offset_patch_drawr~      sT   ""$G  "F
C#6VqC;<q!f+GH #fS78,6GII!!#Aq6{222""$L(9999
X
Y #fS?@1a&kKI3vc?@1a&kKJ""$QF333##%!aV444i j!r"   c                      \        R^^4      P                  4       RR p \        RRR4      P                  4       RR p\        \        P                  ! V^^ 4      V 4       R# )   N)r   r   rF   )r   r\   r   r6   roll)pos_verticesneg_verticess     r    test_negative_rectr      sW     Xq!,668"=LVR,668"=Lrww|Q2LAr"   zclip_to_bbox.pngc                  P   \         P                  ! 4       w  rVP                  R	^.4       VP                  R
^d.4       \        P
                  P                  ^4      P                  4       pV;P                  ^
^d.,          un        V;P                  ^^.,          un        \        P
                  P                  4       P                  4       pV;P                  ^
^d.,          un        V;P                  ^
R.,          un        \        P
                  P                  W#4      p\        P                  ! VRRRR7      pVP                  V4       \        P                  ! RR.^2R..4      pVP!                  V4      p\        P                  ! VRR^RR7      pVP                  V4       R# )         ?coralnone)alpha	facecolorrv   greenblack)r   r   lwrv   Niijiig     `Si)pltsubplotsset_xlimset_ylimmpathPathunit_regular_stardeepcopyverticesunit_circlemake_compound_pathmpatches	PathPatchrh   r3   r   clip_to_bbox)	figaxr   path2combinedpatchbboxresult_pathresult_patchs	            r    test_clip_to_bboxr      s@   llnGCKKb	KKs::''*335DMMb#YMMMaWMJJ""$--/E	NNr3iN	NNr3iNzz,,T9Hw&BELLc5\B:67D''-K%%3'a7LL LLr"   patch_alpha_coloringT)remove_textc                    \         P                  P                  ^4      p \         P                  P                  4       p\        P
                  ! VP                  V P                  RRR1,          .4      p\        P
                  ! VP                  V P                  .4      p\         P                  ! W#4      p\         P                  ! V^,           V4      p\        P                  ! 4       p\        P                  ! V.^RRRR7      pVP                  V4       \        P                  ! V^RRRR7      pVP                  V4       VP!                  R^4       VP#                  R^4       R# )zz
Test checks that the patch and collection are rendered with the specified
alpha values in their facecolor and edgecolor.
Ndashdotru   
linestylesr   rv   ru   rw   r   rv   r      r   r   r   r   r   r   g      ?r   r   r   r   r6   concatenater   codesr   axesmcollectionsPathCollectionadd_collectionr   r   rh   r   r   	starcirclevertsr   	cut_star1	cut_star2r   colr   s	            r    test_patch_alpha_coloringr     s    ::''*DZZ##%FNNFOOT]]4R4-@ABENNFLL$**56E

5(I

519e,I	B

%
%yk01i0>0?AC cy)*i)7)8:E LLKKAKKAr"   patch_alpha_overridec            	         \         P                  P                  ^4      p \         P                  P                  4       p\        P
                  ! VP                  V P                  RRR1,          .4      p\        P
                  ! VP                  V P                  .4      p\         P                  ! W#4      p\         P                  ! V^,           V4      p\        P                  ! 4       p\        P                  ! V.^RRRRR7      pVP                  V4       \        P                  ! V^RRRRR7      pVP                  V4       VP!                  R^4       VP#                  R^4       R# )	rz   Nr         ?)ru   r   r   r   rv   )ru   rw   r   r   rv   r   r   r   r   r   s	            r    test_patch_alpha_overrider   /  s   
 ::''*DZZ##%FNNFOOT]]4R4-@ABENNFLL$**56E

5(I

519e,I	B

%
%yk01i,00>0?	AC
 cy)*i%))7)8	:E
 LLKKAKKAr"   defaultc                  v    \         P                  ! R^R^R7      p V P                  4       ^ ,          ^ 8X  g   Q hR# )r   r   )r   r   NrF   )r   Circleget_facecolor)cs    r    test_patch_color_noner   O  s2     	

61a8A??Q1$$$r"   patch_custom_linestylec                     \         P                  P                  ^4      p \         P                  P                  4       p\        P
                  ! VP                  V P                  RRR1,          .4      p\        P
                  ! VP                  V P                  .4      p\         P                  ! W#4      p\         P                  ! V^,           V4      p\        P                  ! 4       p\        P                  ! V.^R.RRR7      pVP                  V4       \        P                  ! V^RRRR7      pVP                  V4       VP!                  R^4       VP#                  R^4       R# )rz   Nr   r   r   )r   )      r$   r   r   r   r   r   r   r   r   r   s	            r    test_patch_custom_linestyler   W  s    ::''*DZZ##%FNNFOOT]]4R4-@ABENNFLL$**56E

5(I

519e,I	B

%
%	!3 4y2C c1y2E LLKKAKKAr"   c            	         \         P                  P                  ^4      p \         P                  P                  4       p\        P
                  ! VP                  V P                  RRR1,          .4      p\        P
                  ! VP                  V P                  .4      p. ROp\        P                  ! 4       w  rV\        V4       FN  w  rx\         P                  ! W',           V4      p \        P                  ! V ^VRRR7      p	VP                  V	4       KP  	  VP                  RX^,           .4       VP                  RV^,           .4       VP                   P#                  4        R# )rz   Nr   r   )---z-.:soliddashedr   dottedr   r   )r   r   r   r   r6   r   r   r   r   r   	enumerater   r   rh   r   r   canvasdraw)
r   r   r   r   r   r   r   ilsr   s
             r    test_patch_linestyle_accentsr   t  s    ::''*DZZ##%FNNFOOT]]4R4-@ABENNFLL$**56E:J llnGC:&zz%)U+""4-."-6-68 	U ' KKQUKKQUJJOOr"   c           	         \         P                  P                  4       pV P                  4       pVP                  4       p\	        . RO4       F  w  rV\         P                  ! VP
                  V,           VP                  4      p\        P                  ! V^VRRR7      pVP                  V4       \        P                  ! V^RRR R7      pVP                  V4       K  	  VP                  RX^,           .4       VP                  RV^,           .4       VP                  RV^,           .4       VP                  RV^,           .4       R# )r   r   r   N)r   None  r   r   r   )r   r   r   rg   r   r   r   r   r   rh   r   r   )	rj   rk   r   rl   rm   r   r   r   r   s	   &&       r    test_patch_linestyle_noner     s   ZZ##%F""$G  "F45zz&//A-v||<""4-."-6-68 	% ""4-.#-6-35 	 6 b!a%[!b!a%[!
OORQK 
OORQK r"   c            
      N   R RRRRRRR	RR
/p V P                  4        UUu/ uF  w  rW^ ,          bK  	  ppp\        P                  ! R/ VB pV P                  4        F>  w  pw  rgp\        WE4      V8X  g   Q h\        WH4      ! V4       \        WE4      V8X  d   K>  Q h	  R# u uppi )rK   rx   r:   theta1theta2N)rF   r   r   
set_center)r   r*   
set_radius)   r   	set_width)r      
set_theta1)-   2   
set_theta2 )itemsr   Wedgegetattr)	
param_dictkv	init_argswattrold_vnew_vfuncs	            r    test_wedge_movementr     s    :+.12	4J &0%5%5%78%7TQaD%7I8##A&0&6&6&8""uTq5(((q5((( '9 9s   B!wedge_rangex86_64g;On?)r   tolc                     \         P                  ! 4       p R pRR.RR.WR,           .^ R.^ZR.R^.^ R.^-^..^.^-..	p\        V4       FW  w  pw  rEV^,          pV^,          p\        P                  ! V^,          V^,          3^WERR	^R
7      pV P                  V4       KY  	  V P                  R^4       V P                  R^	4       R# )go͂@g,(J@g 7
m@g,(J@gm7
m@rV   h  i|  r   r   )r   rv   r   Ni  iLr   )r   r   r   r   r   
add_artistr   r   )	r   t1argsr   r   r   xywedges	            r    test_wedge_ranger    s     
B	B,'!34eHN3KHHHD  )FEFAq1u~q&)/31F 	e  / KKAKKAr"   c            	        \         P                  ! R^R7      p \        V 4      R8X  g   Q h\         P                  ! R^^^R7      p \        V 4      R8X  g   Q h\         P                  ! R^^^R7      p \        V 4      R8X  g   Q h\         P
                  ! R^^^^R7      p \        V 4      R8X  g   Q h\         P                  ! R^^^^^R7      p R	p\        V 4      V8X  g   Q h\         P                  ! RR ^^R
7      p Rp\        V 4      V8X  g   Q h\         P                  ! R^^R7      p \        V 4      R8X  g   Q h\         P                  ! R^^R7      p \        V 4      R8X  g   Q h\         P                  ! R^^R7      p \        V 4      R8X  g   Q h\        P                  ! . R!ORR7      p\         P                  ! V4      p \        V 4      R8X  g   Q h\         P                  ! \        P                   ! R"4      4      p \        V 4      R8X  g   Q h^^.^^.^^..p\         P                  ! V4      p \        V 4      R8X  g   Q h\         P"                  ! VR7      p \        V 4      R,          R8X  g   Q h\         P"                  ! RR 4      p \        V 4      R8X  g   Q h\         P$                  ! RR R4      p \        V 4      R8X  g   Q h\         P&                  ! V ^^4      p\        V4      R8X  g   Q hR# )#z
Check that patches have nice and working `str` representation.

Note that the logic is that `__str__` is defined such that:
str(eval(str(p))) == str(p)
)r   radiuszCircle(xy=(1, 2), radius=3)rD   z.Ellipse(xy=(1, 2), width=3, height=4, angle=5)z0Rectangle(xy=(1, 2), width=3, height=4, angle=5))rK   rx   r   r   r:   z6Wedge(center=(1, 2), r=3, theta1=4, theta2=5, width=6))r   r:   r;   rE   r   r   z>Arc(xy=(1, 2), width=3, height=4, angle=5, theta1=6, theta2=7))r   rx   r:   rE   z.Annulus(xy=(1, 2), r=(3, 4), width=1, angle=2))r  z3RegularPolygon((1, 2), 20, radius=5, orientation=0))r   r  
resolutionz.CirclePolygon((1, 2), radius=5, resolution=20))r:   r;   z)FancyBboxPatch((1, 2), width=3, height=4)Tr   zPathPatch3((1, 2) ...)z
Polygon0()zPolygon3((1, 2) ...))r   :N   NzFancyArrowPatch(Path(array(zFancyArrowPatch((1, 2)->(3, 4))datazConnectionPatch((1, 2), (3, 4))z'Shadow(ConnectionPatch((1, 2), (3, 4)))Nr   r   )r      )r  r   r   r  r   r   )r   r   strr   r   r   r   r   RegularPolygonCirclePolygonFancyBboxPatchr   r   r   r   r6   emptyr	   ConnectionPatchShadow)r   expectedr   r  ss        r    test_patch_strr    s    	6!,Aq62222F!AQ?Aq6EEEEfAaqAAq6GGGGf!AQGAq6MMMMa1QOAOHq6XFfAQ?A?Hq6X15Aq6JJJJ&rBAq6EEEEa:Aq6@@@@ ::.t<D4 Aq6----&)*Aq6\!!!FQFQF#DAq6++++  d+Aq6#;7777  0Aq66666  8Aq666661a Aq6>>>>r"   multi_color_hatch)r   stylec                  \   \         P                  ! 4       w  rVP                  \        ^4      \        ^^4      4      p\	        V4       F;  w  r4VP                  R4       VP                  RV 24       VP                  R4       K=  	  VP                  4        VP                  R4       \        ^4       Fb  p\        P                  P                  RRV 2/4      ;_uu_ 4        \        VR
,
          ^3R^RRR7      pR	R	R	4       VP                  X4       Kd  	  R	#   + '       g   i     L'; i)r   r   C/Fzhatch.colorrs   z//)hatchfcNg?)r   r   barranger   set_facecolorset_edgecolor	set_hatchautoscale_view	autoscalemplr   contextr   rh   )r   r   rectsr   r=   rx   s         r    test_multi_color_hatchr0    s    llnGCFF58U1a[)EU#6"Qqc7#s $
 LL1XYY1#w7881v:q/2qHA 9
Q 88s   "DD+zunits_rectangle.pngc                     ^ RI Hu Hp  V P                  4        \        P
                  ! ^V P                  ,          ^V P                  ,          3^V P                  ,          ^V P                  ,          4      p\        P                  ! 4       w  r#VP                  V4       VP                  ^V P                  ,          ^V P                  ,          .4       VP                  ^V P                  ,          ^	V P                  ,          .4       R# r   N)matplotlib.testing.jpl_unitsrN   	jpl_unitsregisterr   r   kmr   r   rh   r   r   )Ur   r   r   s       r    test_units_rectangler8  )  s    ,,JJLAaddFAaddF+QqttVQqttV<AllnGCLLOKK144144 !KK144144 !r"   zconnection_patch.pngmpl20g~jt?)r   r   r  c            
         \         P                  ! ^^4      w  p w  r\        P                  ! RR	RRW!RR7      pVP	                  V4       R
pRpRpVP                  4       p\        P                  ! WEVVRR7      pVP	                  V4       R# )r   r  ->)xyAxyBcoordsAcoordsBaxesAaxesB
arrowstylezaxes fractionr   )r<  r=  r>  r?  rB  Nry   )?rC  )g333333?rS   )rH   皙?)r   r   r   r  r  get_yaxis_transform)r   ax1ax2conr<  r=  r>  r?  s           r    test_connection_patchrI  6  s     ll1a(OC#

"
"zz+16),.24C NN3
C
CG%%'G

"
"sW+2sDCNN3r"   c           
         V P                  ^^4      w  r#\        P                  ! RRVR	RR^R7      pV P                  V4       VP                  ^^4      w  r#VP                  p\
        P                  R,          \
        P                  R&   \        P                  ! RRVVP                  ^,
          VP                  ^,
          3RR^R7      pVP                  V4       R# )
r   r  figure pixelsr;  r<  r>  r@  r=  r?  rB  shrinkB
figure.dpisavefig.dpiN333333?rD  ii)	r   r   r  r  r   r   r   r:   r;   )rj   rk   rF  rG  rH  bbs   &&    r    test_connection_patch_figrT  J  s    
   A&HC

"
"fC$C 1%HC	B"%,,|"<CLL

"
"fCXX]BIIN+_$C sr"   c           
      n   R
pRpV P                  ^^4      w  rE\        P                  ! VRVVRR^R7      pV P                  V4       \        P
                  R,          \        P
                  R&   VP                  ^^4      w  rEV^ ,          VP                  ^H,          ,          V^,          VP                  ^H,          ,          3pV^ ,          VP                  ^H,          ,          V^,          VP                  ^H,          ,          3p\        P                  ! VRVVRR^R7      pVP                  V4       R	# )rQ  zaxes pointszfigure pointsr;  rL  rN  rO  zaxes pixelsrK  NrP  rR  )r   r   r  r  r   r   dpi)	rj   rk   xyA_ptsxyB_ptsrF  rG  rH  xyA_pixxyB_pixs	   &&       r    "test_connection_patch_pixel_pointsr[  a  s   GG  A&HC

"
"wS'..2A?C "%,,|"<CLL1%HCqz7;;r>*GAJB,GHGqz7;;r>*GAJB,GHG

"
"wS'..2A?C sr"   c                      ^ RI H p Hp V ! R^^^ ^ ^ 4      pV! ^R7      p\        P                  ! V^ 3V^4      p\        P
                  ! 4       w  rVVP                  V4       R# )r   )datetime	timedelta  )secondsN)r]  r^  r   r   r   r   rh   )r]  r^  startdeltar   r   r   s          r    test_datetime_rectanglerc  w  sT    ,T1aAq)Eb!Eqz5!4EllnGCLLr"   c                     ^ RI H p  V ! R^^^ ^ ^ 4      pV ! R^^4      p\        P                  ! \        4      ;_uu_ 4        \        P
                  ! V^ 3V^4       RRR4       \        P                  ! \        4      ;_uu_ 4        \        P
                  ! ^ V3^V4       RRR4       R#   + '       g   i     LW; i  + '       g   i     R# ; i)r   r]  r_  i  N)r]  pytestraises	TypeErrorr   r   )r]  ra  dt_deltas      r    test_datetime_datetime_failsrj    s    !T1aAq)Ea#H	y	!	!E1:x3 
" 
y	!	!Au:q(3 
"	! 
"	! 
"	!	!s    B*B=*B:	=C	c            
         \         P                  ! RR R4      p . ROpV P                  4       pV P                  4       pV P	                  R4      p\
        P                  ! V Uu. uF  pVP                  VVV4      NK  	  up4      p\
        P                  ! V Uu. uF  qPP                  V4      NK  	  up4      p\
        P                  ! Wv8H  4      '       g   Q hR# u upi u upi r   rS   Nr   r   ))rH   r   )rD  r   )r   r   rm  )	r   r   get_pathget_transform_process_radiusr6   rM   contains_pointall)ellpointsr   r8   r  pointr  results           r    test_contains_pointrw    s    


:sC
0C>F<<>D!!#I  &FxxBHJBH ,,U-6-35BHJ KH XXfEfU))%0fEFF66&$%%%%	J Fs   "CC c                  &   \         P                  ! RR R4      p . ROpV P                  4       pV P                  4       pV P	                  R4      pVP                  WV4      pV P                  V4      p\        P                  ! We8H  4      '       g   Q hR# rl  )r   r   rn  ro  rp  contains_pointsr6   rr  )rs  rt  r   r8   r  r  rv  s          r    test_contains_pointsrz    s~    


:sC
0C>F<<>D!!#I  &F##Fv>H  (F66&$%%%%r"   c                 l   \         P                  ! R R.4      p\         P                  ! RR .4      pR\        P                  R&   V P	                  4       p\
        P                  ! VRRR7      p\
        P                  ! WS^ ,          V^,          R7      pVP                  V4       VP                  V4       VP	                  4       p\
        P                  ! VRRR7      p\
        P                  ! W!P                  ^H,          V,          ,           RR\         P                  ! \        P                  ! VP                  4       4      4      R,          \         P                  ! \        P                  ! VP                  4       4      4      R,          RR7      pVP                  V4       VP                  V4       R	# )
rD  rQ  rr   figurerO  r   )r   r:   r;   )oxoy)r   r:   r;   r%  ecr   N)r6   rM   r   r   r   r   r   r  rh   rV  rW   mcolorsto_rgbr   )rj   rk   r   dxya1r=   shadowa2s   &&      r    test_shadowr    s5   	2r(	B
((B8
C #+CLL				B2b9D__T!fQ8FLLLL				B2b9Db 3&&b::gnnT%7%7%9:;b@::gnnT%7%7%9:;b@	F
 LLLLr"   c                  t    ^ RI H p  V ! R^^4      p\        P                  ! 4       w  r#\        ^ V3RV34      pR# )r   re  i  {Gz?N)r]  r   r   r	   )r]  dtimer   r   arrows        r    test_fancyarrow_unitsr    s4    !T1a EllnGCQJu6Er"   c                  D   \         P                  ! 4       w  rVP                  ^ ^ ^
^
^^RR7      p\        P                  ! RR.RR.RR.RR.RR.RR.RR.RR..4      p\        P
                  ! V\        P                  ! VP                  ^4      4      '       g   Q h\        P                  ! R	R	.R	R
.R	R
.RR.RR.R
R	.R
R	.R	R	..4      pVP                  ^^^^^^^R7       \        P
                  ! V\        P                  ! VP                  ^4      4      '       g   Q hR# )r   r   )head_length
head_widthr:   gGz+@g33333$@gL#@g\(\$@gp=
ף#@g
ףp=
?g(\µ0@gGz.@g\(\?g(\?)r  r	  dxdyr:   r  r  Ng
ףp=
ǿ)	r   r   r  r6   rM   allcloseroundr   set_datar   r   r  	expected1	expected2s        r    test_fancyarrow_setdatar    s3   llnGCHHQ2rqQbHIEu~~~e}~e}e}u~	I ;;y"((5;;":;;;;u~u~u~t}t}u~u~u~	I 
NN
qRBaA1   ;;y"((5;;":;;;;r"   zlarge_arc.svg)r   c            	      r   \         P                  ! ^^4      w  p w  r^pRpRpW3 FE  p\        W43WU^RR7      pVP                  V4       VP	                  4        VP                  R4       KG  	  VP                  ^^4       VP                  ^^4       VP                  R	R4       VP                  R
R4       R# )r   i  r   )r   colorequaliPF  i  NiiXi)r   r   r   rh   set_axis_off
set_aspectr   r   )r   rF  rG  r  r	  diameterr   as           r    test_large_arcr    s    ll1a(OC#AAHjq<
Q

g	  LLALLA LLLLr"   zall_quadrants_arcs.svgc                  t   \         P                  ! ^^RRR7      w  rRpRpRpRp\        VP                  4       V4       EFt  w  pw  rx^ p	\        RR\        P
                  ! ^4      ,          3WC34       F  w  r\        WR7       F  w  pw  r\        W,          V
,          W,          V
,          3W',          W(,          ^RV 2^V,           \        P                  ! \        P                  ! W4      4      R,          RV 2RV 2R7	      pVP                  V4       K  	  X^,           p	K  	  VP                  V) R	,          VR	,          4       VP                  V) R	,          VR	,          4       VP                  ^ R
R7       VP                  ^ R
R7       VP                  4        VP!                  R4       EKw  	  R# )r   F)squeezefigsizei )ra  r"  r  zbig )r   r  zorderrE   labelgidi  r   )r  r  N)r$   r$   ))r   r   )r   r   r   )r   r   ))r   r   )r   r   )r   r   )r   r   )r  )r   rr   )r   r  )r   gMbP?gH.?)r   r   zipravelr6   rL   r   r   rad2degarctan2rh   r   r   axhlineaxvliner  r  )r   ax_arrscalediag_centerson_axis_centersskewsr   sxsyr   prescalecentersjx_signy_signr  s                   r    test_rotated_arcsr    s   ,,q!UHEKCE7L8O9EFLLNE2HR!$i)rwwqz1I%J'6&E"GH'0'B##F^h.^h.0JJaS'q5**RZZ%?@3F *qc
 Q (C !A#"G$ 	UFTM54<0
UFTM54<0


1C
 


1C
 

g3 3r"   c            
          \         P                  ! \        R R7      ;_uu_ 4        \        ^ ^ RRRR7       RRR4       R#   + '       g   i     R# ; i)zGot unknown shape: 'foo'matchrD  foo)shapeN)rf  rg  
ValueErrorr
   r   r"   r    test_fancyarrow_shape_errorr  "  s4    	z)C	D	D1ac/ 
E	D	D	Ds   A  A	z
fmt, matchc                     \         P                  ! \        VR 7      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     R# ; i)r  N)rf  rg  r  r   )fmtr  s   &&r    test_boxstyle_errorsr  '  s+    
 
z	/	/ 
0	/	/	/s	   ;A	annulus)baseline_imagesre   c                      \         P                  ! 4       w  r\        RRRRR7      p\        RRR^-RRR RR	7      pVP                  V4       VP                  V4       VP	                  R
4       R# )r   rD  皙?gr%  rr   mrt   xxxr%  r  r   r$  r  Nrm  r   rQ  )r   r   r   rh   r  r   r   cirrs  s       r    test_annulusr  0  s`     llnGC
*c4C
0C
*j#rS5:CLLLLMM'r"   c                  @   \         P                  ! 4       w  r\        RRRRR7      p\        RRR^ RRRR	R
7      pVP                  V4       VP                  V4       VP	                  R4       RVn        RVn        RVn        RVn        RVn        RVn        ^-Vn        R# )rH   rD  r  r  r  rr   r  rt   r   r  r  r  r  NrG   r  rm  r  )	r   r   r   rh   r  rK   radiir:   rE   r  s       r    test_annulus_settersr  <  s     llnGC
(C#
.C
(FCS5:CLLLLMM'CJCICICJCICICIr"   c                     \         P                  ! 4       w  r\        RRRRR7      p\        RRR^ RRRR	R
7      pVP                  V4       VP                  V4       VP	                  R4       RVn        VP                  R4       VP                  R4       VP                  R8X  g   Q hRVn	        RVn        VP                  R4       VP                  R4       VP                  R8X  g   Q hRVn	        ^-Vn
        R# )rH   rD  r  r  r  rr   r  rt   r   r  r  r  r  rQ  NrG   r  rm  )rD  rD  r  )r   r   r   rh   r  rK   set_semimajorset_semiminorr  r:   rE   r  s       r    test_annulus_setters2r  Q  s     llnGC
(C#
.C
(FCS5:CLLLLMM'CJcc99
"""CICJcc99
"""CICIr"   c                      ^ ^ .p \        W .4      P                  p\        P                  ! \	        V .4      P                  4       P                  V8H  4      '       g   Q hR# r2  )r   extentsr6   rr  r   get_extents)ru  correct_extentss     r    test_degenerate_polygonr  j  sM    FEE>*22O66'5'"..088OKLLLLr"   kwargc                     \         P                  ! \        R R7      ;_uu_ 4        \        RRR/V R/B  RRR4       R#   + '       g   i     R# ; i)zQSetting the 'color' property will override the edgecolor or facecolor properties.r  r  r   Nr   )rf  warnsUserWarningr   )r  s   &r    test_color_override_warningr  p  sM    	kE
F 
F 	0G0w/0
F 
F 
F 
Fs	   ?A	c                  r    \        \        P                  ! R4      4      p V P                  4       . 8X  g   Q hR# )r   Nr  )r   r6   zerosr\   )polys    r    test_empty_vertsr  x  s*    288F#$D>>r!!!r"   c                     \        4       p V P                  \        R ,          '       * 4       V P                  4       \        R ,          '       * 8X  g   Q hV P                  R4       V P                  4       \        R ,          8X  g   Q hR# )zpatch.antialiasedN)r   set_antialiasedr   get_antialiasedr   s    r    test_default_antialiasedr  }  sk    GE	h':;;<  "84G+H'HIII	$  "h/B&CCCCr"   c                      \        4       p V P                  R 4       V P                  R4       V P                  4       R8X  g   Q hR# )r   Nr   )r   set_linestyler{   r  s    r    test_default_linestyler    s<    GE		 G+++r"   c                  H    \        4       p V P                  4       R 8X  g   Q hR# )buttN)r   get_capstyler  s    r    test_default_capstyler    s     GE6)))r"   c                  H    \        4       p V P                  4       R 8X  g   Q hR# )miterN)r   get_joinstyler  s    r    test_default_joinstyler    s     GE G+++r"   autoscale_arcsvg)re   r   r   c                  v   \         P                  ! ^^RR7      w  r\        R^^^ ^ZR7      .\        RRR^
^R7      .\        RRR^
^R7      \        RRR^n^xR7      \        RRR^^R7      \        RRRRR	R7      .3p\        W4       F/  w  r4V F  pVP	                  V4       K  	  VP                  4        K1  	  R
# )r   )r  )r   r   r         ?g      @      @g      @i6  i@  N)r  r   rF   rm  )r   r   r   r  rh   r,  )r   axs	arc_listsr   arcsarcs         r    test_autoscale_arcr    s     ||Aq&1HC	VQ!B	/0	Zc"R	89	Zc"R	8	Zc#c	:	Zc#c	:	Zc#c	:	<=I 'CLL 
 (r"   c           	         \        R R .R ^^ ^<^R7      p\        R R .R ^^ ^<^R7      p\        P                  ! V.RRR7      pVP                  4       P	                  V4       V P                  4       P                  V4       R# )r   r   r   rE   r   r   )r   
facecolors
edgecolorsN)r   r   PatchCollectionr   rh   r   )rj   rk   arc1arc2r   s   &&   r    test_arc_in_collectionr    sy    BxQq2>DBxQq2>D

&
&v&257C  &&&s+r"   c           	         \        R R .R ^^ ^<^R7      p\        R R .R^^ ^<^
R7      pVP                  4       P                  V4       V P                  4       P                  V4       VP                  R 4       VP	                  ^4       R# )r   r   r  N)r   r   rh   r   r2   )rj   rk   r  r  s   &&  r    test_modifying_arcr    sx    BxQq2>DBxa"B?D  &!!$'NN2NN2r"   c                  b   \         P                  ! 4       w  r\        P                  P	                  ^^ ^ ^
4      p\
        P                  ! RR.RR.RR.RR.RR.RR.RR.RR..4      p\
        P                  ! V\
        P                  ! VP                  4       ^4      4      '       g   Q h\
        P                  ! R	R
.RR.RR.RR.RR.RR.RR.R	R
..4      pVP                  R^^RR7       \
        P                  ! V\
        P                  ! VP                  4       ^4      4      '       g   Q hR# )r   gffffff?rH   g @g       @gffffff@rT   g      $@g333333?g(\?g{Gz?gQ?gGz@gq=
ףp@gQ	@gGz@r  g{Gz@gQ@gRQ@g(\@r   g333333?)r  r  r  r:   Ng       g{Gz)r   r   r-  r   Arrowr6   rM   r  r  r\   r  r  s        r    test_arrow_set_datar    s)   llnGCKKaAr*E	r
	c
	b		b		S		b		b		b		I ;;y"((5??+<a"@AAAA




r


		I 
NNRA!3N/;;y"((5??+<a"@AAAAr"   c                 J   V P                  4       pVP                  4       pR p\        P                  ! RV/4      ;_uu_ 4        VP                  \        P
                  ! R^^RR7      4       RRR4       VP                  \        P
                  ! R^^RR7      4       VP                  ^ ,          P                  V4       VP                  ^ ,          P                  4       V8X  g   Q hVP                  ^ ,          P                  4       V8X  g   Q hR#   + '       g   i     L; i)rT   zhatch.linewidthr  )r$  NrF   )	rg   r   
rc_contextrh   r   r   r   set_hatch_linewidthget_hatch_linewidth)rj   rk   rl   rm   r   s   &&   r     test_set_and_get_hatch_linewidthr    s    ""$G  "F	B	*B/	0	0++FAqDE 
1 h((ASABOOA**2.>>!002b888??1113r999 
1	0s   *DD"	c                  h    \         P                  ! 4       w  rVP                  . . . . 4      pVf   Q hR # )N)r   r   r  )r   r   r  s      r    test_empty_fancyarrowr    s/    llnGCHHRR$Er"   ))r  zUnknown style: 'foo')z	Round,fooz%Incorrect style argument: 'Round,foo')rv   r   )rd   r  pdfeps)rd   r  r  r  )]__doc__platformnumpyr6   numpy.testingr   r   rf  
matplotlibr-  matplotlib.patchesr   r   r   r   r   r	   r
   r   r   matplotlib.testing.decoratorsr   r   matplotlib.transformsr   matplotlib.pyplotpyplotr   r   r   r   r  r   r   r   r   r   r3   r   r!   rB   rQ   rc   rp   r~   r   r   r   r   r   r.  r   r   r   r   r   machiner  r  r0  r8  rI  rT  r[  rc  rj  rw  rz  r  r  r  r  r  r  markparametrizer  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r"   r    <module>r"     s     A  L L L O & 8 8
"-J-<`0Bf60 (* )*( (" )"BB %&' (6 )*= >< )*= >> 9% % +,$? @84 (! )!2)  =/t#++-9auFF8:?@ &'TK L$ ()*	" +	" )*'t#++-9auFF$ ( ), ( )*	
4
&& ( )07<> ?#73 4& +,G<! =!H0
  ( 	
 9+5'B C 9+5'B C( 9+5'B C0M "<=1 >1"
D,*
,
 ?#T33   <=, >,  <= >B:  <=: >: r"   