o
    tBh                     @   sV   d dl Zd dlmZ d dlmZ d dlZejdedd dd ZdddZ	dd Z
dS )    N)degrees)_apiz3.5module)nameobj_typec                 C   s*   |dkr| dkrt d dS t| |S )Nr   zdx and dy are 0)r   warn_externalmathatan2)dydx r   x/var/www/html/riverr-enterprise-integrations-main/venv/lib/python3.10/site-packages/mpl_toolkits/axisartist/clip_path.pyr	   
   s   
r	   rightTc                 C   s  g }g }g }|r
dnd}	|rdnd}
t | |D ]O\}}|dv r4||k d}|dd  |d d  }n||kd}|dd  |d d  }|d rNd}nd}g g }}t|D ]\}|| }|dkr|||  }||d  ||  |||d  ||    }|| | }|t||||d  |gg |t||||d  |gg d}g g }}|dkr|dkr||d  ||  }||d  ||  }tt|
| |	| }||||f qZ|dkrE|||  }||d  ||  |||d  ||    }|| | }|g|g}}|d }|dkr2|dkr2||d  ||  }||d  ||  }tt|
| |	| }||||f qZ|dkrg|t|||d  g |t|||d  g q|||fS )N   )upr   ir   g        )zipastypenpargwhereappendconcatenater   r	   )xlinesylinesx0clipxdirydirclipped_xlinesclipped_ylines_pos_anglesxsignysignxybdbnssegxsegyr   cr   r
   y0ar   r   r   r      s^   
,$$

,

r   c                    sl   j \}}}}||k}||k}||kr0t| g|g|d||d\}	}
}t|	|
|d||d\}}}nt| g|g|d||d\}	}
}t|	|
|d||d\}}}||krkt|||d||d\}}}t|||d||d\}}}nt|||d||d\}}}t|||d||d\}}} fdd|D } fdd|D } fdd|D } fdd|D }tt||||||gfS )	Nr   )r   r   r   leftc                    s4   g | ]\}}}  |r||f|d  d d  fqS Z      	containsy.0r$   r%   r-   bboxr   r   
<listcomp>p       z%clip_line_to_rect.<locals>.<listcomp>c                    s0   g | ]\}}}  |r||fd | d fqS r/   	containsxr5   r%   r$   r-   r6   r   r   r8   r   s    c                    s4   g | ]\}}}  |r||f|d  d d  fqS r/   r2   r4   r6   r   r   r8   t   r9   c                    s4   g | ]\}}}  |r||fd | d d fqS r/   r:   r<   r6   r   r   r8   v   r9   )extentsr   listr   )xlineyliner7   r   r,   x1y1r   r   lx1ly1c_right_lx2ly2c_left_ly3lx3c_top_ly4lx4	c_bottom_c_leftc_bottomc_rightc_topr   r6   r   clip_line_to_rectS   sD   rS   )r   TT)numpyr   r   r   
matplotlibr   warn_deprecated__name__r	   r   rS   r   r   r   r   <module>   s    

?