§
    …Ûgþ  ã                  óŠ   — 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dS )	é    )Úannotations)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyN)Ú	ArrayLike)ÚCoordinateArrayÚ
FillReturnÚFillTypeÚ
LineReturnÚLineTypec                  ó@  — e Zd ZdZd?d„Ze	 	 	 d@dAd„¦   «         Ze	 	 	 	 	 dBdCd„¦   «         Ze	 	 	 	 dDdEd%„¦   «         Ze	 	 dFdGd(„¦   «         Z		 	 dHdId,„Z
	 	 dHdJd/„ZedKdLd4„¦   «         ZedMd6„¦   «         ZedNd7„¦   «         ZedHdOd9„¦   «         Ze	 	 	 	 dPdQd>„¦   «         ZdS )RÚRendererz"Abstract base class for renderers.Úxr   ÚyÚreturnú'tuple[CoordinateArray, CoordinateArray]c                ó    — t          j        |¦  «        }t          j        |¦  «        }|j        dk    rt          j        ||¦  «        \  }}||fS )Né   )ÚnpÚasarrayÚndimÚmeshgrid)Úselfr   r   s      úM/granary/edev/quantum/lib/python3.11/site-packages/contourpy/util/renderer.pyÚ_grid_as_2dzRenderer._grid_as_2d   sE   € ÝŒJ�q‰MŒMˆÝŒJ�q‰MŒMˆØŒ6�QŠ;ˆ;Ý”;˜q !Ñ$Ô$‰DˆAˆqØ�!ˆtˆó    r   ÚC0çffffffæ?Úfilledr
   Ú	fill_typeúFillType | strÚaxr   ÚcolorÚstrÚalphaÚfloatÚNonec                ó   — d S ©N© )r   r    r!   r#   r$   r&   s         r   r    zRenderer.filled   ó	   € ð 	ˆr   Úblackçš™™™™™¹?NÚpoint_colorú
str | NoneÚquad_as_tri_alphac                ó   — d S r*   r+   )r   r   r   r#   r$   r&   r/   r1   s           r   ÚgridzRenderer.grid%   ó	   € ð 	ˆr   ç      ð?r   Úlinesr   Ú	line_typeúLineType | strÚ	linewidthc                ó   — d S r*   r+   )r   r6   r7   r#   r$   r&   r9   s          r   r6   zRenderer.lines2   s	   € ð 	ˆr   Úzú'ArrayLike | np.ma.MaskedArray[Any, Any]c                ó   — d S r*   r+   )r   r   r   r;   r#   r$   s         r   ÚmaskzRenderer.mask>   r,   r   Úmulti_filledúlist[FillReturn]Úkwargsc                óx   — |�||d<   t          |¦  «        D ]"\  }}|€d|dz  › �|d<    | j        |||fi |¤Ž Œ#dS )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   r?   r!   r#   r$   rA   Úir    s           r   r?   zRenderer.multi_filledI   sq   € ð4 ÐØ#ˆF�7‰OÝ" <Ñ0Ô0ð 	9ð 	9‰IˆAˆvØˆ}Ø". a¨"¡f , ,��w‘ØˆDŒK˜ 	¨2Ð8Ð8°Ð8Ð8Ð8Ð8ð	9ð 	9r   Úmulti_linesúlist[LineReturn]c                óx   — |�||d<   t          |¦  «        D ]"\  }}|€d|dz  › �|d<    | j        |||fi |¤Ž Œ#dS )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$   rC   rD   )rE   r6   )r   rG   r7   r#   r$   rA   rF   r6   s           r   rG   zRenderer.multi_linesj   sq   € ð4 ÐØ#ˆF�7‰OÝ! +Ñ.Ô.ð 	7ð 	7‰HˆAˆuØˆ}Ø". a¨"¡f , ,��w‘ØˆDŒJ�u˜i¨Ð6Ð6¨vÐ6Ð6Ð6Ð6ð	7ð 	7r   FÚfilenameÚtransparentÚboolc                ó   — d S r*   r+   )r   rJ   rK   s      r   ÚsavezRenderer.save‹   ó   € àˆr   ú
io.BytesIOc                ó   — d S r*   r+   ©r   s    r   Úsave_to_bufferzRenderer.save_to_buffer�   rO   r   c                ó   — d S r*   r+   rR   s    r   ÚshowzRenderer.show“   rO   r   Útitlec                ó   — d S r*   r+   )r   rV   r#   r$   s       r   rV   zRenderer.title—   rO   r   Úgreenú.1fÚfmtÚquad_as_tric                ó   — d S r*   r+   )r   r   r   r;   r#   r$   rZ   r[   s           r   Úz_valueszRenderer.z_values›   r4   r   )r   r   r   r   r   r   )r   r   r   )r    r
   r!   r"   r#   r   r$   r%   r&   r'   r   r(   )r   r-   r.   Nr   )r   r   r   r   r#   r   r$   r%   r&   r'   r/   r0   r1   r'   r   r(   )r   r   r5   r   )r6   r   r7   r8   r#   r   r$   r%   r&   r'   r9   r'   r   r(   )r   r-   )r   r   r   r   r;   r<   r#   r   r$   r%   r   r(   )r   N)r?   r@   r!   r"   r#   r   r$   r0   rA   r   r   r(   )rG   rH   r7   r8   r#   r   r$   r0   rA   r   r   r(   )F)rJ   r%   rK   rL   r   r(   )r   rP   )r   r(   )rV   r%   r#   r   r$   r0   r   r(   )r   rX   rY   F)r   r   r   r   r;   r   r#   r   r$   r%   rZ   r%   r[   rL   r   r(   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r    r3   r6   r>   r?   rG   rN   rS   rU   rV   r]   r+   r   r   r   r      sõ  € € € € € Ø,Ð,ðð ð ð ð ð
 ØØðð ð ð ñ „^ðð ð
 ØØØ"&Ø#$ð
ð 
ð 
ð 
ñ „^ð
ð ð
 ØØØð	ð 	ð 	ð 	ñ „^ð	ð ð Øðð ð ð ñ „^ðð Ø ð9ð 9ð 9ð 9ð 9ðJ Ø ð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>ri      sß   ðØ "Ð "Ð "Ð "Ð "Ð "à #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à Ð Ð Ð àð aØ€I€I€Ià&Ð&Ð&Ð&Ð&Ð&à`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`ðVð Vð Vð Vð Vˆsñ Vô Vð Vð Vð Vr   