o
    œf?	  ã                   @  s|   d dl mZ d dlmZmZ d dlmZmZ d dlZ	er4d dl
Z
d dlmZ d dlmZmZmZmZmZ G dd„ deƒZdS )	é    )Úannotations)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyN)Ú	ArrayLike)ÚCoordinateArrayÚ
FillReturnÚFillTypeÚ
LineReturnÚLineTypec                   @  sÊ   e Zd ZdZdBdd„Ze			
	dCdDdd„ƒZe							dEdFdd „ƒZe			
	!	"dGdHd(d)„ƒZe			dIdJd,d-„ƒZ	edKdLd2d3„ƒZ
edMd5d6„ƒZedNd7d8„ƒZedOdPd:d;„ƒZe			<	=	.dQdRd@dA„ƒZdS )SÚRendererzSAbstract base class for renderers, defining the interface that they must implement.Úxr   ÚyÚreturnú'tuple[CoordinateArray, CoordinateArray]c                 C  s6   t  |¡}t  |¡}|jdkrt  ||¡\}}||fS )Né   )ÚnpZasarrayÚndimZmeshgrid)Úselfr   r   © r   ú7lib/python3.10/site-packages/contourpy/util/renderer.pyÚ_grid_as_2d   s
   


zRenderer._grid_as_2dr   ÚC0çffffffæ?Úfilledr	   Ú	fill_typeúFillType | strÚaxr   ÚcolorÚstrÚalphaÚfloatÚNonec                 C  ó   d S ©Nr   )r   r   r   r   r   r!   r   r   r   r       ó   	zRenderer.filledÚblackçš™™™™™¹?NÚpoint_colorú
str | NoneÚquad_as_tri_alphac                 C  r$   r%   r   )r   r   r   r   r   r!   r)   r+   r   r   r   Úgrid+   ó   zRenderer.gridç      ð?r   Úlinesr   Ú	line_typeúLineType | strÚ	linewidthc                 C  r$   r%   r   )r   r/   r0   r   r   r!   r2   r   r   r   r/   8   s   
zRenderer.linesÚzú'ArrayLike | np.ma.MaskedArray[Any, Any]c                 C  r$   r%   r   )r   r   r   r3   r   r   r   r   r   ÚmaskD   r&   zRenderer.maskFÚfilenameÚtransparentÚboolc                 C  r$   r%   r   )r   r6   r7   r   r   r   ÚsaveO   ó   zRenderer.saveú
io.BytesIOc                 C  r$   r%   r   ©r   r   r   r   Úsave_to_bufferS   r:   zRenderer.save_to_bufferc                 C  r$   r%   r   r<   r   r   r   ÚshowW   r:   zRenderer.showÚtitlec                 C  r$   r%   r   )r   r?   r   r   r   r   r   r?   [   r:   zRenderer.titleÚgreenú.1fÚfmtÚquad_as_tric                 C  r$   r%   r   )r   r   r   r3   r   r   rB   rC   r   r   r   Úz_values_   r-   zRenderer.z_values)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)   r*   r+   r"   r   r#   )r   r   r.   r   )r/   r   r0   r1   r   r   r   r    r!   r"   r2   r"   r   r#   )r   r'   )r   r   r   r   r3   r4   r   r   r   r    r   r#   )F)r6   r    r7   r8   r   r#   )r   r;   )r   r#   )r   N)r?   r    r   r   r   r*   r   r#   )r   r@   rA   F)r   r   r   r   r3   r   r   r   r   r    rB   r    rC   r8   r   r#   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r,   r/   r5   r9   r=   r>   r?   rD   r   r   r   r   r      sN    
ú
øùú
ør   )Z
__future__r   Úabcr   r   Útypingr   r   Znumpyr   ÚioZnumpy.typingr   Zcontourpy._contourpyr   r	   r
   r   r   r   r   r   r   r   Ú<module>   s    