Ë
    ¤ehþ  ã                  ó‚   — d dl mZ d dlmZmZ d dlmZmZ d dlZ	erd dl
Z
d dlmZ d dlmZmZmZmZmZ  G d„ de«      Zy)	é    )Úannotations)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyN)Ú	ArrayLike)ÚCoordinateArrayÚ
FillReturnÚFillTypeÚ
LineReturnÚLineTypec                  ó¶  — e Zd ZdZdd„Ze	 	 	 d	 	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 d	 	 	 	 	 	 	 	 	 	 	 dd„«       Z		 	 d	 	 	 	 	 	 	 	 	 	 	 dd„Z
	 	 d	 	 	 	 	 	 	 	 	 	 	 dd	„Zeddd
„«       Zedd„«       Zedd„«       Zeddd„«       Ze	 	 	 	 d 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d„«       Zy)"ÚRendererz"Abstract base class for renderers.c                ó®   — t        j                  |«      }t        j                  |«      }|j                  dk(  rt        j                  ||«      \  }}||fS )Né   )ÚnpÚasarrayÚndimÚmeshgrid)ÚselfÚxÚys      úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/contourpy/util/renderer.pyÚ_grid_as_2dzRenderer._grid_as_2d   sD   € Ü�J‰J�q‹MˆÜ�J‰J�q‹MˆØ�6‰6�QŠ;Ü—;‘;˜q !Ó$‰DˆAˆqØ�!ˆtˆó    c                 ó   — y ©N© )r   ÚfilledÚ	fill_typeÚaxÚcolorÚalphas         r   r   zRenderer.filled   ó   € ð 	r   Nc                 ó   — y r   r   )r   r   r   r!   r"   r#   Úpoint_colorÚquad_as_tri_alphas           r   ÚgridzRenderer.grid%   ó   € ð 	r   c                 ó   — y r   r   )r   ÚlinesÚ	line_typer!   r"   r#   Ú	linewidths          r   r+   zRenderer.lines2   s   € ð 	r   c                 ó   — y r   r   )r   r   r   Úzr!   r"   s         r   ÚmaskzRenderer.mask>   r$   r   c                ó|   — |�||d<   t        |«      D ]'  \  }}|€d|dz  › �|d<    | j                  |||fi |¤Ž Œ) y)aý  Plot multiple sets of filled contours on a single axes.

        Args:
            multi_filled (list of filled contour arrays): Multiple filled contour sets as returned
                by :meth:`.ContourGenerator.multi_filled`.
            fill_type (FillType or str): Type of filled data as returned by
                :attr:`~.ContourGenerator.fill_type`, or string equivalent.
            ax (int or Renderer-specific axes or figure object, optional): Which axes to plot on,
                default ``0``.
            color (str or None, optional): If a string color then this same color is used for all
                filled contours. If ``None``, the default, then the filled contour sets use colors
                from the ``tab10`` colormap in order, wrapping around to the beginning if more than
                10 sets of filled contours are rendered.
            kwargs: All other keyword argument are passed on to
                :meth:`.Renderer.filled` unchanged.

        .. versionadded:: 1.3.0
        Nr"   ÚCé
   )Ú	enumerater   )r   Úmulti_filledr    r!   r"   ÚkwargsÚir   s           r   r5   zRenderer.multi_filledI   sZ   € ð4 ÐØ#ˆF�7‰OÜ" <Ó0ò 	9‰IˆAˆvØˆ}Ø$% a¨"¡f X ,��w‘ØˆD�K‰K˜ 	¨2Ñ8°Ó8ñ	9r   c                ó|   — |�||d<   t        |«      D ]'  \  }}|€d|dz  › �|d<    | j                  |||fi |¤Ž Œ) y)aÓ  Plot multiple sets of contour lines on a single axes.

        Args:
            multi_lines (list of contour line arrays): Multiple contour line sets as returned by
                :meth:`.ContourGenerator.multi_lines`.
            line_type (LineType or str): Type of line data as returned by
                :attr:`~.ContourGenerator.line_type`, or string equivalent.
            ax (int or Renderer-specific axes or figure object, optional): Which axes to plot on,
                default ``0``.
            color (str or None, optional): If a string color then this same color is used for all
                lines. If ``None``, the default, then the line sets use colors from the ``tab10``
                colormap in order, wrapping around to the beginning if more than 10 sets of lines
                are rendered.
            kwargs: All other keyword argument are passed on to
                :meth:`Renderer.lines` unchanged.

        .. versionadded:: 1.3.0
        Nr"   r2   r3   )r4   r+   )r   Úmulti_linesr,   r!   r"   r6   r7   r+   s           r   r9   zRenderer.multi_linesj   sZ   € ð4 ÐØ#ˆF�7‰OÜ! +Ó.ò 	7‰HˆAˆuØˆ}Ø$% a¨"¡f X ,��w‘ØˆD�J‰J�u˜i¨Ñ6¨vÓ6ñ	7r   c                 ó   — y r   r   )r   ÚfilenameÚtransparents      r   ÚsavezRenderer.save‹   ó   € àr   c                 ó   — y r   r   ©r   s    r   Úsave_to_bufferzRenderer.save_to_buffer�   r>   r   c                 ó   — y r   r   r@   s    r   ÚshowzRenderer.show“   r>   r   c                 ó   — y r   r   )r   Útitler!   r"   s       r   rE   zRenderer.title—   r>   r   c                 ó   — y r   r   )r   r   r   r/   r!   r"   ÚfmtÚquad_as_tris           r   Úz_valueszRenderer.z_values›   r)   r   )r   r   r   r   Úreturnz'tuple[CoordinateArray, CoordinateArray])r   ÚC0gffffffæ?)r   r
   r    úFillType | strr!   r   r"   Ústrr#   ÚfloatrJ   ÚNone)r   Úblackgš™™™™™¹?Nr   )r   r   r   r   r!   r   r"   rM   r#   rN   r&   ú
str | Noner'   rN   rJ   rO   )r   rK   g      ð?r   )r+   r   r,   úLineType | strr!   r   r"   rM   r#   rN   r-   rN   rJ   rO   )r   rP   )r   r   r   r   r/   z'ArrayLike | np.ma.MaskedArray[Any, Any]r!   r   r"   rM   rJ   rO   )r   N)r5   zlist[FillReturn]r    rL   r!   r   r"   rQ   r6   r   rJ   rO   )r9   zlist[LineReturn]r,   rR   r!   r   r"   rQ   r6   r   rJ   rO   )F)r;   rM   r<   ÚboolrJ   rO   )rJ   z
io.BytesIO)rJ   rO   )rE   rM   r!   r   r"   rQ   rJ   rO   )r   Úgreenz.1fF)r   r   r   r   r/   r   r!   r   r"   rM   rG   rM   rH   rS   rJ   rO   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r(   r+   r0   r5   r9   r=   rA   rC   rE   rI   r   r   r   r   r      sâ  „ Ù,óð ð
 ØØðàðð "ðð ð	ð
 ðð ðð 
òó ðð ð
 ØØØ"&Ø#$ð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð  ð
ð !ð
ð 
ò
ó ð
ð ð
 ØØØð	àð	ð "ð	ð ð		ð
 ð	ð ð	ð ð	ð 
ò	ó ð	ð ð Øðàðð ðð 3ð	ð
 ðð ðð 
òó ðð Ø ð9à&ð9ð "ð9ð ð	9ð
 ð9ð ð9ð 
ó9ðJ Ø ð7à%ð7ð "ð7ð ð	7ð
 ð7ð ð7ð 
ó7ðB óó ðð òó ðð òó ðð óó ðð ð ØØØ!ð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð ð
ð ð
ð 
ò
ó ñ
r   r   )Ú
__future__r   Úabcr   r   Útypingr   r   Únumpyr   ÚioÚnumpy.typingr   Úcontourpy._contourpyr	   r
   r   r   r   r   r   r   r   ú<module>r`      s.   ðÝ "ç #ß %ã áÛå&ç`Õ`ôVˆsõ Vr   