
    G8c                     j    d dl Zd dlmZ d dlmZ d dlZ ej                  ded       d Zd
dZ	d	 Z
y)    N)degrees)_apiz3.5module)nameobj_typec                 n    |dk(  r| dk(  rt        j                  d       yt        j                  | |      S )Nr   zdx and dy are 0)r   warn_externalmathatan2)dydxs     C/usr/lib/python3/dist-packages/mpl_toolkits/axisartist/clip_path.pyr   r   
   s2    	Qw27,-zz"b!!    c                    g }g }g }|rdnd}	|rdnd}
t        | |      D ]V  \  }}|dv r ||k  j                  d      }|dd  |d d z
  }n||kD  j                  d      }|dd  |d d z
  }|d   rd}nd}g g }}t        j                  |      D ]  \  }||   }|dk(  r|||   z
  }||dz      ||   z
  |||dz      ||   z
  z  z  }||   |z   }|j	                  t        j
                  ||||dz    |gg             |j	                  t        j
                  ||||dz    |gg             d}g g }}|dk(  r!|dk(  r||dz      ||   z
  }||dz      ||   z
  }t        t        |
|z  |	|z              }|j	                  |||f       |dk(  s|||   z
  }||dz      ||   z
  |||dz      ||   z
  z  z  }||   |z   }|g|g}}|dz   }|dk(  r!|dk(  r||dz      ||   z
  }||dz      ||   z
  }t        t        |
|z  |	|z              }|j	                  |||f        |dk7  s|j	                  t        j
                  |||d  g             |j	                  t        j
                  |||d  g             Y |||fS )N   )upright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as                           r   r   r      s   NNKA2EA2EFF# 0B1?"R$A123BBR$A123BBQ4BBdKKO 	0DQ1ABw1Q4i!fqtma!fqtm(<=qTBY%%bnndAb1It5L&MN%%bnndAb1It5L&MNd8a1Q3!A$B1Q3!A$BE%(E"H56""BA;/a1Q4i!fqtma!fqtm(<=qTBY TB4dqS8a1Q3!A$B1Q3!A$BE%(E"H56""BA;/=	0@ 8!!"..$"#"@A!!"..$"#"@Aa0Bd >;66r   c                    |j                   \  }}}}||kD  }||kD  }||kD  r-t        | g|g|d||      \  }	}
}t        |	|
|d||      \  }}}n,t        | g|g|d||      \  }	}
}t        |	|
|d||      \  }}}||kD  r+t        |||d||      \  }}}t        |||d||      \  }}}n*t        |||d||      \  }}}t        |||d||      \  }}}|D cg c]&  \  }}}|j                  |      r||f|dz   dz  dz
  f( }}}}|D cg c]#  \  }}}|j                  |      r||fd|z
  dz  f% }}}}|D cg c]&  \  }}}|j                  |      r||f|dz   dz  dz   f( }}}}|D cg c]&  \  }}}|j                  |      r||fd|z
  dz  dz   f( }}}}t	        t        ||            ||||gfS c c}}}w c c}}}w c c}}}w c c}}}w )Nr   )r   r    r!   leftZ      )extentsr   	containsy	containsxlistr   )xlineylinebboxr   r/   x1y1r    r!   lx1ly1c_right_lx2ly2c_left_ly3lx3c_top_ly4lx4	c_bottom_r'   r(   r0   c_leftc_bottomc_rightc_tops                               r   clip_line_to_rectrN   S   s   \\NBB7D7D	Bw!5'E7B'.TFS( c2&,4dDS' "5'E7B'.TFS( c2&,4dDS' 
BwS"%,4dDS&"3R(.TFS)  S"%,4dDS&"3R(.TFS) <C $ $1a" 1vB#~*+ $F $8A & &WQ1>>!$ Q"q&C( &H &<D % %Aq..# AR3+, %G %;A # #1aq! !frAvns*+ #E # C7E BBB$&%#s   +G (G+G6+G)r   TT)numpyr   r
   r   
matplotlibr   warn_deprecated__name__r   r   rN    r   r   <module>rT      s8          UH ="<7~&Cr   