ó
    {ñ:i  ã                   ó<  • S r SSKrSSKJr  SSKJr   " S S5      r " S S\5      r " S	 S
\5      r	 " S S\5      r
 " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r\\	\
\\\\\/rS rSS jrg)z/Contains classes for generating hatch patterns.é    N)Ú_api)ÚPathc                   ó   • \ rS rSrSrSrg)ÚHatchPatternBaseé	   z#The base class for a hatch pattern.© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   ó    ÚS/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/matplotlib/hatch.pyr   r   	   s   † Ù-Úr   r   c                   ó    • \ rS rSrS rS rSrg)ÚHorizontalHatché   c                 ó”   • [        UR                  S5      UR                  S5      -   U-  5      U l        U R                  S-  U l        g )NÚ-Ú+é   ©ÚintÚcountÚ	num_linesÚnum_vertices©ÚselfÚhatchÚdensitys      r   Ú__init__ÚHorizontalHatch.__init__   ó;   € Ü˜eŸk™k¨#Ó.°·±¸SÓ1AÑAÀWÑLÓMˆŒØ ŸN™N¨QÑ.ˆÕr   c                 óþ   • [         R                  " SSU R                  SSS9u  p4X4S-  -  nSUSS S2S4'   X1SS S2S	4'   SUS	S S2S4'   X1S	S S2S	4'   [        R                  USS S2'   [        R
                  US	S S2'   g ©
Nç        ç      ð?FT)Úretstepg       @r   r   é   ©ÚnpÚlinspacer   r   ÚMOVETOÚLINETO©r   ÚverticesÚcodesÚstepsÚstepsizes        r   Úset_vertices_and_codesÚ&HorizontalHatch.set_vertices_and_codes   sŸ   € ÜŸ+š+ c¨3°·±ÀØ.2ñ4‰ˆà˜B‘ÑˆØˆ���A��q�ÑØ!���A��q�ÑØˆ���A��q�ÑØ!���A��q�ÑÜ—k‘kˆˆaˆd�ˆd‰Ü—k‘kˆˆaˆd�ˆdŠr   ©r   r   N©r	   r
   r   r   r!   r4   r   r   r   r   r   r      ó   † ò/õ	"r   r   c                   ó    • \ rS rSrS rS rSrg)ÚVerticalHatché   c                 ó”   • [        UR                  S5      UR                  S5      -   U-  5      U l        U R                  S-  U l        g )NÚ|r   r   r   r   s      r   r!   ÚVerticalHatch.__init__    r#   r   c                 óþ   • [         R                  " SSU R                  SSS9u  p4X4S-  -  nX1SS S2S4'   SUSS S2S	4'   X1S	S S2S4'   SUS	S S2S	4'   [        R                  USS S2'   [        R
                  US	S S2'   g r%   r*   r/   s        r   r4   Ú$VerticalHatch.set_vertices_and_codes$   sŸ   € ÜŸ+š+ c¨3°·±ÀØ.2ñ4‰ˆà˜B‘ÑˆØ!���A��q�ÑØˆ���A��q�ÑØ!���A��q�ÑØˆ���A��q�ÑÜ—k‘kˆˆaˆd�ˆd‰Ü—k‘kˆˆaˆd�ˆdŠr   r6   Nr7   r   r   r   r:   r:      r8   r   r:   c                   ó    • \ rS rSrS rS rSrg)ÚNorthEastHatché0   c                 óð   • [        UR                  S5      UR                  S5      -   UR                  S5      -   U-  5      U l        U R                  (       a  U R                  S-   S-  U l        g SU l        g )NÚ/ÚxÚXr)   r   r   r   r   s      r   r!   ÚNorthEastHatch.__init__1   sa   € ÜØ�[‰[˜Ó §¡¨CÓ 0Ñ0°5·;±;¸sÓ3CÑCÀwÑNóPˆŒà�>�>Ø!%§¡°!Ñ!3°qÑ 8ˆDÕà !ˆDÕr   c                 ó  • [         R                  " SSU R                  S-   5      nSU-   USS S2S4'   SU-
  USS S2S4'   SU-   USS S2S4'   SU-
  USS S2S4'   [        R                  USS S2'   [        R
                  USS S2'   g ©Ng      à¿g      à?r)   r&   r   r   r'   r*   ©r   r0   r1   r2   s       r   r4   Ú%NorthEastHatch.set_vertices_and_codes9   ó£   € Ü—’˜D # t§~¡~¸Ñ'9Ó:ˆØ %™Kˆ���A��q�ÑØ %™Kˆ���A��q�ÑØ %™Kˆ���A��q�ÑØ %™Kˆ���A��q�ÑÜ—k‘kˆˆaˆd�ˆd‰Ü—k‘kˆˆaˆd�ˆdŠr   r6   Nr7   r   r   r   rB   rB   0   s   † ò"õ"r   rB   c                   ó    • \ rS rSrS rS rSrg)ÚSouthEastHatchéC   c                 óð   • [        UR                  S5      UR                  S5      -   UR                  S5      -   U-  5      U l        U R                  (       a  U R                  S-   S-  U l        g SU l        g )NÚ\rF   rG   r)   r   r   r   r   s      r   r!   ÚSouthEastHatch.__init__D   se   € ÜØ�[‰[˜Ó §¡¨SÓ!1Ñ1°E·K±KÀÓ4DÑDØñóˆŒð �>�>Ø!%§¡°!Ñ!3°qÑ 8ˆDÕà !ˆDÕr   c                 ó  • [         R                  " SSU R                  S-   5      nSU-   USS S2S4'   SU-   USS S2S4'   SU-   USS S2S4'   SU-   USS S2S4'   [        R                  USS S2'   [        R
                  USS S2'   g rJ   r*   rK   s       r   r4   Ú%SouthEastHatch.set_vertices_and_codesM   rM   r   r6   Nr7   r   r   r   rO   rO   C   s   † ò"õ"r   rO   c                   ó$   • \ rS rSrSrS rS rSrg)ÚShapeséW   Fc                 óD  • U R                   S:X  a  SU l        SU l        g U R                   S-  S-   U R                   S-   -  U R                   S-  U R                   -  -   U l        U R                  [        U R                  5      -  U R
                  (       a  SOS-  U l        g )Nr   r   r)   )Únum_rowsÚ
num_shapesr   ÚlenÚshape_verticesÚfilledr   s      r   r!   ÚShapes.__init__Z   sŠ   € Ø�=‰=˜AÓØˆDŒOØ !ˆDÕà $§¡°Ñ 2°QÑ 6¸4¿=¹=È1Ñ;LÑMØ $§¡°Ñ 2°d·m±mÑCñ DˆDŒOà!%§¡Ü!$ T×%8Ñ%8Ó!9ñ":à'+§{§{¡!¸ñ";ˆDÕr   c                 ó²  • SU R                   -  nU R                  U-  U R                  -  nU R                  nU R                  (       d7  [
        R                  " XDS S S2   S-  /5      n[
        R                  " XU/5      n/ n/ n[        U R                   S-   5       H�  nUS-  S:X  a&  [
        R                  " SSU R                   S-   5      n	O+[
        R                  " US-  SUS-  -
  U R                   5      n	Xƒ-  n
U	 H)  nUR                  XKU
/-   5        UR                  U5        M+     M’     [
        R                  " XaS9  [
        R                  " XrS9  g )Nr'   éÿÿÿÿgÍÌÌÌÌÌì?r)   r   r   )Úout)
rZ   r]   ÚsizeÚshape_codesr^   r+   ÚconcatenateÚranger,   Úappend)r   r0   r1   Úoffsetr]   rd   Úvertices_partsÚcodes_partsÚrowÚcolsÚrow_posÚcol_poss               r   r4   ÚShapes.set_vertices_and_codese   s'  € Ø�t—}‘}Ñ$ˆØ×,Ñ,¨vÑ5¸¿	¹	ÑAˆØ×&Ñ&ˆØ�{�{ÜŸ^š^Ø±°"°Ñ!5¸Ñ!;Ð<ó>ˆNäŸ.š.¨+Ð)CÓDˆKØˆØˆÜ˜Ÿ™¨Ñ*Ö+ˆCØ�Q‰w˜!‹|Ü—{’{ 1 a¨¯©¸Ñ):Ó;‘ä—{’{ 6¨A¡:¨q°6¸A±:©~¸t¿}¹}ÓM�Ø‘lˆGÛ�Ø×%Ñ% nÀÐ7IÑ&IÔJØ×"Ñ" ;Ö/ó  ñ ,ô 	�Š�~Ò4Ü
�Š�{Ó.r   )r[   r   N)r	   r
   r   r   r^   r!   r4   r   r   r   r   rW   rW   W   s   † Ø€Fò	<õ/r   rW   c                   ó(   ^ • \ rS rSrU 4S jrSrU =r$ )ÚCirclesé|   c                 ó’   >• [         R                  " 5       nUR                  U l        UR                  U l        [        TU ]  X5        g )N)r   Úunit_circler0   r]   r1   rd   Úsuperr!   ©r   r   r    ÚpathÚ	__class__s       €r   r!   ÚCircles.__init__}   s6   ø€ Ü×ÒÓ!ˆØ"Ÿm™mˆÔØŸ:™:ˆÔÜ‰Ñ˜Õ(r   )rd   r]   )r	   r
   r   r   r!   r   Ú__classcell__©rx   s   @r   rq   rq   |   s   ø† ÷)ó )r   rq   c                   ó,   ^ • \ rS rSrSrU 4S jrSrU =r$ )ÚSmallCirclesé„   gš™™™™™É?c                 óV   >• UR                  S5      U-  U l        [        TU ]  X5        g )NÚo©r   rZ   ru   r!   ©r   r   r    rx   s      €r   r!   ÚSmallCircles.__init__‡   ó%   ø€ ØŸ™ SÓ)¨WÑ4ˆŒÜ‰Ñ˜Õ(r   ©rZ   ©r	   r
   r   r   rc   r!   r   rz   r{   s   @r   r}   r}   „   s   ø† Ø€D÷)ó )r   r}   c                   ó,   ^ • \ rS rSrSrU 4S jrSrU =r$ )ÚLargeCircleséŒ   gffffffÖ?c                 óV   >• UR                  S5      U-  U l        [        TU ]  X5        g )NÚOr�   r‚   s      €r   r!   ÚLargeCircles.__init__�   r„   r   r…   r†   r{   s   @r   rˆ   rˆ   Œ   s   ø† Ø€D÷)ó )r   rˆ   c                   ó0   ^ • \ rS rSrSrSrU 4S jrSrU =r$ )ÚSmallFilledCirclesé”   gš™™™™™¹?Tc                 óV   >• UR                  S5      U-  U l        [        TU ]  X5        g )NÚ.r�   r‚   s      €r   r!   ÚSmallFilledCircles.__init__˜   r„   r   r…   ©	r	   r
   r   r   rc   r^   r!   r   rz   r{   s   @r   rŽ   rŽ   ”   s   ø† Ø€DØ€F÷)ó )r   rŽ   c                   ó0   ^ • \ rS rSrSrSrU 4S jrSrU =r$ )ÚStarsé�   gUUUUUUÕ?Tc                 ór  >• UR                  S5      U-  U l        [        R                  " S5      nUR                  U l        [        R                  " [        U R
                  5      [        R                  [        R                  S9U l        [        R                  U R                  S'   [        TU ]9  X5        g )NÚ*é   )Údtyper   )r   rZ   r   Úunit_regular_starr0   r]   r+   Úfullr\   r.   Ú	code_typerd   r-   ru   r!   rv   s       €r   r!   ÚStars.__init__¡   s€   ø€ ØŸ™ SÓ)¨WÑ4ˆŒÜ×%Ò% aÓ(ˆØ"Ÿm™mˆÔÜŸ7š7¤3 t×':Ñ':Ó#;¼T¿[¹[Ü)-¯©ñ9ˆÔä"Ÿk™kˆ×Ñ˜ÑÜ‰Ñ˜Õ(r   )rZ   rd   r]   r“   r{   s   @r   r•   r•   �   s   ø† Ø€DØ€F÷)ó )r   r•   c           	      ó  • [        S5      nU bt  [        U 5      R                  U5      nU(       aR  SR                  [        U5      5      nSR                  [        U5      5      n[        R
                  " SSSU SU S3S9  g g g )	Nz-+|/\xXoO.*Ú z3.4z3.11z#hatch must consist of a string of "z3" or None, but found the following invalid values "z`". Passing invalid values is deprecated since %(since)s and will become an error in %(removal)s.)ÚremovalÚmessage)ÚsetÚ
differenceÚjoinÚsortedr   Úwarn_deprecated)r   Úvalid_hatch_patternsÚinvalidsÚvalids       r   Ú_validate_hatch_patternr«   ¶   sŽ   € Ü˜~Ó.ÐØÑÜ�u“:×(Ñ(Ð)=Ó>ˆÞØ—G‘GœFÐ#7Ó8Ó9ˆEØ—w‘wœv hÓ/Ó0ˆHÜ× Ò ØØØ=¸e¸Wð Eà$˜:ð &SðSóð ð r   c                 ó@  • [        U5      n[         Vs/ s H  nU" X5      PM     nn[        U Vs/ s H  oDR                  PM     sn5      nUS:X  a  [	        [
        R                  " S5      5      $ [
        R                  " US45      n[
        R                  " U[        R                  5      nSnU HT  nUR                  S:w  d  M  XhX„R                  -    n	XxX„R                  -    n
UR                  Xš5        X„R                  -  nMV     [	        Xg5      $ s  snf s  snf )z’
Given a hatch specifier, *hatchpattern*, generates Path to render
the hatch in a unit square.  *density* is the number of lines per
unit square.
r   )r   r   r   )	r   Ú_hatch_typesÚsumr   r   r+   Úemptyr�   r4   )Úhatchpatternr    Ú
hatch_typeÚpatternsÚpatternr   r0   r1   ÚcursorÚvertices_chunkÚcodes_chunks              r   Úget_pathr·   Ç   s  € ô �'‹l€Gõ #/ó0Ú".�Jñ ˜<Ö1Ù".ð ð 0ä¹HÓEºH°×,Ô,¹HÑEÓF€Là�qÓÜ”B—H’H˜VÓ$Ó%Ð%ä�xŠx˜ qÐ)Ó*€HÜ�HŠH�\¤4§>¡>Ó2€Eà€FÛˆØ×Ñ 1Õ$Ø%¨V×6JÑ6JÑ-JÐKˆNØ v×0DÑ0DÑ'DÐEˆKØ×*Ñ*¨>ÔGØ×*Ñ*Ñ*ŠFñ ô �Ó Ð ùò%0ùâEs
   ”D±D)é   )r   Únumpyr+   Ú
matplotlibr   Úmatplotlib.pathr   r   r   r:   rB   rO   rW   rq   r}   rˆ   rŽ   r•   r­   r«   r·   r   r   r   Ú<module>r¼      sÄ   ðÙ 5ã å Ý  ÷	ñ 	ô
"Ð&ô "ô""Ð$ô "ô""Ð%ô "ô&"Ð%ô "ô("/Ðô "/ôJ)ˆfô )ô)�7ô )ô)�7ô )ô)˜ô )ô)ˆFô )ð ØØØØØØØ	ð	€òõ"!r   