+
     ]i,  c                   s   ^ RI t^ RIHt ^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt ^ RItR t]P                  P!                  RRR	R
RRR^]P"                  R*^ .^^ ..]P$                  ! R*^ .^^ ..4      ]! ^ ^ .^^ ..]P&                  ]P(                  .4      R+R,R-R.R/R0]P*                  ! R4      .4      R 4       t]P                  P!                  RR]P$                  ! . R1O.4      R2R3R4.4      R 4       t ! R R]P*                  4      t]
! 4       R 4       tR t]
! RR7      R 4       t]
! R.RR7      R 4       t]
! 4       R 4       tR tR tR t ]P                  P!                  R ]P*                  ! R4      ]! 4       PC                  ^^4      ]! 4       PC                  ^^4      3]P*                  ! R]! 4       PC                  ^^4      R!7      ]! 4       PC                  ^^4      ]! 4       PC                  ^^4      3]P*                  ! R"]! 4       PC                  ^^4      R!7      ]! 4       PC                  ^^4      ]! 4       PC                  ^^4      3]P*                  ! ]P"                  ]! 4       PC                  ^^4      R!7      ]! 4       PC                  ^^4      ]! 4       PC                  ^^4      3.4      R# 4       t"R$ t#]P                  P!                  R%]P*                  ! R4      ^
R]! 4       PI                  ^
4      3]P*                  ! R4      RR&]! 4       PK                  R&4      3]P*                  ! R]! 4       PC                  ^^4      R!7      ^
R]! 4       PC                  ^^4      PI                  ^
4      3]P*                  ! R]! 4       PC                  ^^4      R!7      RR&]! 4       PC                  ^^4      PK                  R&4      3]P*                  ! R"]! 4       PC                  ^^4      R!7      ^
R]! 4       PC                  ^^4      PI                  ^
4      3]P*                  ! ]P"                  ]! 4       PC                  ^^4      R!7      ^
R]! 4       PC                  ^^4      PI                  ^
4      3.4      R' 4       t&R( t'R) t(R# )5    N)markers)Path)check_figures_equal)Affine2Dc                  s6    \         P                  ! R RR7      p R# )oZnone)marker	fillstyleNr   MarkerStyle)Zmarker_styles    C/usr/lib64/python3.14/site-packages/matplotlib/tests/test_marker.pytest_marker_fillstyler      s    &&cVDL    r   r   xZ ZNonez$\frac{1}{2}$u   $♫$c                 s2    \         P                  ! V 4       R # Nr   r      &r
   test_markers_validr      s    , r   Zsquarec                 s    \         P                  ! \        4      ;_uu_ 4        \        P                  ! V 4       R R R 4       R #   + '       g   i     R # ; ir   )pytestraises
ValueErrorr   r	   r   r   r
   test_markers_invalidr   *   s0     
z	"	"F# 
#	"	"	"s   AA	c                   s6   a a ] tR t^6t oRtV 3R ltRtVtV ;t# )UnsnappedMarkerStylez
A MarkerStyle where the snap threshold is force-disabled.

This is used to compare to polygon/star/asterisk markers which do not have
any snap threshold set.
c                s2   < \         SV `  4        R V n        R # r   )Zsuper_recache_snap_threshold)Zself	__class__s   &r
   r   ZUnsnappedMarkerStyle._recache=   s    #r   )r   )	Z__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r   Z__static_attributes__Z__classdictcell__Z__classcell__)r   Z__classdict__s   @@r
   r   r   6   s     $ $r   r   c                 sV   V P                  4       pVP                  4       pRpVP                  ^ .^ .RVR7       VP                  ^ .^ .RV^,          R7       VP                  ^.^.RVR7       VP                  ^.^.\        R4      V^,          R7       VP                  ^.R.RVR7       VP                  ^.R.\        R4      V^,          R7       VP                  ^.^.RVR7       VP                  ^.^.\        R4      VR7       VP                  ^.R.RVR7       VP                  ^.R.\        R4      VR7       VP                  ^.^.RVR7       VP                  ^.^.RVR7       VP                  ^.R.RVR7       VP                  ^.R.RVR7       VP                  ^.^.RVR7       VP                  ^.^.R	VR7       VP                  ^.^.RVR7       VP                  ^.^.\        R
4      VR7       VP                  RRR7       VP                  RRR7       R# )   r   sr   ZD      ?Zpg      @Zhg      @ZHZ8ZxlimZylimN  )   r    -   )r    r    )r    r    r       r    )r#   r    r    )   r    )r$   r    r    )r$   r    i   )i   r    g     6@)      g      @)add_subplotscatterr   set)fig_testfig_refax_testax_refsizes   &&   r
   test_poly_markerr.   B   s+   ""$G  "F D OOQC!Z4O8
NNA3C46N2 OOQC!VtO4
NNA3$8$=aNHOOQC#yDO9
NNA3&:3&?46NJ OOQC!VtO4
NNA3$8$=NFOOQC#yDO9
NNA3&:3&?4NH OOQC!VtO4
NNA3C4N0OOQC#yDO9
NNA3cTN2 OOQC!Z4O8
NNA3C4N0 OOQC!\TO:
NNA3$8$=NFKK[{K3
JJKkJ2r   c                  s    Rp \         P                  ! 4       w  rVP                  ^ .^ .RV R7       VP                  ^.^.RV R7       VP                  RRR7       R# )	r   r   r   Nr   )r#      )r#   r/   r    )r%         ?r%   r   )pltZsubplotsr'   r(   )r-   ZfigZax      r
   test_star_markerr4   o   sV     DllnGCJJsQC$J/JJsQC	TJ2FF+F.r   g333333?)tolc                 s|  aa V P                  4       pVP                  4       oRpVV3R lpVP                  ^ .^ .R	VR7       V! ^ RV4       VP                  R.R.R
VR7       V! RRV4       VP                  ^.^.RVR7       V! ^RV^,          4       VP                  RRR7       SP                  RRR7       R# )r   c                 s   < SP                  V .V .\        V4      VR 7       SP                  R4      R8X  d#   SP                  V .V .\        V4      VR 7       R# R# )r   ZextpngN)r'   r   Zgetfixturevalue)yZstyler-   r,   requests   &&&r
   draw_ref_markerZ-test_asterisk_marker.<locals>.draw_ref_marker   s_     	sQC(<U(CtL""5)U2NNA3,@,G!  # 3r   r   Z+r0   r   r   Nr   )r       )r    r:   r    )r    r:   r!   r1   )r&   r'   r(   )r)   r*   r8   r+   r-   r9   r,   s   &&f   @r
   test_asterisk_markerr;   ~   s    ""$G  "F D# OOQC!VtO4AsD!OOSEC5dO;Cd# OOQC!Z4O8AsDF#KK[{K3
JJKkJ2r   r6   g(\?)Z
extensionsr5   c                 s    V P                  4       pVP                  4       pVP                  ^ ^ R^d^ R7       VP                  ^ ^ R^d^ R7       R# )r    r   )r   
markersizemarkeredgewidthz	$\bullet$N)r&   plot)r*   r)   r,   r+   s   &&  r
   test_text_markerr?      sJ      "F""$G
KK1Tc1KELLAlsALNr   c                 s   \        \        P                  P                  4      p^2p^pW$,          ^,           p^V,          V,          p^V,          V,          ^,          pV P                  W`P                  ,          WpP                  ,          34       V P                  . RO4      pVP                  WaP                  ,          WpP                  ,          34       VP                  . RO4      p	\        \        P                  P                  4       F  w  rW,          pW,          ^,          pVP                  W.W^,           .RR^R7       VP                  WRW^
RRR7       VP                  W^,           RW^
RRR7       V	P                  W.W^,           .RR^W^
RRR7
       K  	  VP                  RV3R^V,          3R7       V	P                  RV3R^V,          3R7       VP                  R	4       V	P                  R	4       R
# )i2   ZkZ-)c	linestylelwZfullZwhite)r@   r   r<   r=   r   markerfacecolor)r@   rA   rB   r   r<   r=   r   rC   r   ZoffN)r    r    r/   r/   r%   )
Zlenr   r	   Zset_size_inchesZdpiZadd_axesZ	enumerater>   r(   Zaxis)r*   r)   Zmarker_countZmarker_sizeZncolZnrowZwidthZheightr,   r+   Zir   r   r7   s   &&            r
   test_marker_clippingrD      s   
 w**223LKD!#DOd"E_t#a'FU[[0&;;2FGHl+Fell2F[[4HIJ-Gw22::;	HIM 	QFQAJ#CAC!2$g 	 	? 	A1u!2$g 	 	?
 	aVaQZ3#!"B%w 	 	@ <$ JJT4La$h'7J8KKdD\q4x(8K9
KKLLr   c                 s    \         P                  ! R4      p \        4       P                  ^^4      p\         P                  ! RVR7      pR# )zBTest that initializing marker with transform is a simple addition.r   	transformN)r   r	   r   	translate)r   ZtZt_markerr3   r
   test_marker_init_transformsrH      s8      %F
Q"A""3!4Hr   c                  b    \         P                  ! R 4      p \         P                  ! R RR7      pR# )*round)Z	joinstyleNr   r   Zstyled_marker     r
   test_marker_init_joinstylerN      s$      %F''w?Mr   c                  rI   )rJ   rK   )ZcapstyleNr   rL   rM   r
   test_marker_init_captylerO      s$      %F''g>Mr   zmarker,transform,expectedrE   z$|||$c                 s(    V P                  V4      pR # r   )Ztransformed)r   rF   expected
new_markers   &&& r
   test_marker_transformedrR      s     ##I.Jr   c                  sr   \         P                  ! R 4      p \        P                  ! \        4      ;_uu_ 4        V P                  4       pRRR4       \        P                  ! \        4      ;_uu_ 4        V P                  ^
^
R7      pRRR4       R#   + '       g   i     LP; i  + '       g   i     R# ; i)r   Ndegrad)r   r	   r   r   r   rotated)r   rQ   rM   r
   test_marker_rotated_invalidrW      sn      %F	z	"	"^^%
 
#	z	"	"^^^3
 
#	" 
#	"	"	"	"s   B4B%B"	%B6	zmarker,deg,rad,expectedg{Gz?c                 s*    V P                  WR 7      pR# )rS   N)rV   )r   rT   rU   rP   rQ   s   &&&& r
   test_marker_rotatedrX     s     C1Jr   c                  sL   \         P                  ! R 4      p V P                  ^4      pV P                  ^^4      p\         P                  ! R \        4       P	                  ^^4      R7      p V P                  ^4      p\        4       P	                  ^^4      P                  ^4      pR# )Z1rE   N)r   r	   Zscaledr   rG   Zscale)r   rQ   rP   r3   r
   test_marker_scaledrY     s      %Fq!J
 q!$J
   
0D0DQ0JKFq!Jz##Aq)//2Hr   c                  s    \         P                  ! R R4      p \         P                  ! R R\        4       P                  ^Z4      4      pR# )r   ZleftN)r   r	   r   
rotate_deg)Zm1Zm2rM   r
   test_alt_transformr[   ,  s5    			S&	)B			S&(**?*?*C	DBr   ir"   )   r/   )r#   r:   )r#   r    
   )r\   r/   r]   )r#   r:   r]   )r%   r    r/   r:      )r/   )r#   r^   )r/   r:   r^   r    ))ZnumpyZnpZmatplotlib.pyplotZpyplotr2   Z
matplotlibr   Zmatplotlib.pathr   Zmatplotlib.testing.decoratorsr   Zmatplotlib.transformsr   r   r   ZmarkZparametrizeZTICKLEFTZarrayZMOVETOZLINETOr	   r   r   r   r.   r4   r;   r?   rD   rH   rN   rO   rG   rR   rW   rZ   ZrotaterX   rY   r[   ) r   r
   <module>r_      s        = * ( 
!Wq!fHHr1g1v1a&1a&	DKK56


%$ ( )( 
 HH !"
$ $$
	$7.. 	$ )3 )3X/ 3 3F T2O 3O % %PB-, 4xz33Aq9
Q"$
(<(<Q(BC
Q"HJ$8$8A$>@HJ,@,@A,FGZ!Q!5!5a!;=HJ$8$8A$>@
Q"HJ$8$8A$>@
7 
D
D4 2r4)>)>r)BCtT8:+<+<T+BC
(<(<Q(BC
D(*&&q!,77;=
(<(<Q(BCdHJ((A.55d;=HJ,@,@A,FG$
$$Q*55b9;HJ$8$8A$>@
D(*&&q!,77;=5 DDD(Kr   