o
    h.                     @   s|   d dl Zd dlmZmZ d dlmZmZmZ d dl	m
Z
 dd Zdd Zd	d
 Zdd Zdd Zdd Zdd Zdd ZdS )    N)assert_array_equalassert_allclose)	ellipsoidellipsoid_stats	rectangle)testingc                   C   <   t t tddd W d    d S 1 sw   Y  d S )N   r   raises
ValueErrorr    r   r   Y/var/www/html/scripts/venv/lib/python3.10/site-packages/skimage/draw/tests/test_draw3d.pytest_ellipsoid_sign_parameters1      "r   c                   C   r   )Nr   r
   r   r   r   r   r   test_ellipsoid_sign_parameters2   r   r   c                   C   s<   t t tddd W d    d S 1 sw   Y  d S )Nr
   r   r   r   r   r   test_ellipsoid_sign_parameters3   r   r   c                  C   s  t dddddddddf } t ddddd}|ddddddf }tg dg dg dg dg dgg dg d	g d	g d	g dgg dg d	g d
g d	g dgg dg d	g d	g d	g dgg dg dg dg dg dgg}t| |t t||t d S )Nr
      r	            ?r          @)spacingr   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   nparrayr   astypebooltesttest_anisotropicexpectedr   r   r   test_ellipsoid_bool   sH   "
r%   c                  C   s  t dddddddddddf } t dddddd}|ddddddf }tg d	g d
g dg d
g d	gg d
g dg dg dg d
gg dg dg dg dg dgg d
g dg dg dg d
gg d	g d
g dg d
g d	gg}t| | t|| d S )Nr
   T)levelsetr   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-   g      r-   r*   )r   r   r   r   r!   r   r   r   test_ellipsoid_levelset>   sL   &


r.   c                  C   s   t ddd\} }tdtj | dd td|dd t ddd\} }tdtj | dd td|dd t d	d
d\} }tdtj | dd td|dd d S )N   
      i   g-C6?)atolgQ@g{Gz?         i gIF@g?)r   r   r   pi)volsurfr   r   r   test_ellipsoid_statsf   s   r9   c               
   C   s   t jg dg dg dg dg dgg dg dg dg dg dgg dg dg dg dg dgg dg dg dg dg dggt jd} t jdt jd}d}d}t|||jd\}}}d||||f< t||  d S )	N)r   r   r   r   r   r   dtyper      r=   )r   r   r
   )r=   r
      )extentshaper   r   r   uint8zerosr   r@   r   )r$   imgstartr?   pprrccr   r   r   test_rect_3d_extentw   B   
rI   c               
   C   s   t jg dg dg dg dg dgg dg dg dg dg dgg dg dg dg dg dgg dg dg dg dg dggt jd} t jdt jd}d}d}t|||jd\}}}d||||f< t||  d S )	Nr   )r   r   r   r   r   r:   r<   )r   r   r
   )r>   r
   r>   )endr@   r   rA   )r$   rD   rE   rK   rF   rG   rH   r   r   r   test_rect_3d_end   rJ   rL   )numpyr   skimage._shared.testingr   r   skimage.drawr   r   r   skimage._sharedr   r   r   r   r%   r.   r9   rI   rL   r   r   r   r   <module>   s    '(