
    9i                     l    S SK rS SKJrJr  S SKJrJrJr  S SK	J
r
  S rS rS rS rS	 rS
 rS rS rg)    N)assert_array_equalassert_allclose)	ellipsoidellipsoid_stats	rectangle)testingc                      [         R                  " [        5         [        SSS5        S S S 5        g ! , (       d  f       g = f)N   r   raises
ValueErrorr        ^/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/skimage/draw/tests/test_draw3d.pytest_ellipsoid_sign_parameters1r      s&    	
	#"a 
$	#	#	   2
A c                      [         R                  " [        5         [        SSS5        S S S 5        g ! , (       d  f       g = f)Nr   r   r   r   r   r   test_ellipsoid_sign_parameters2r      s&    	
	#!Q 
$	#	#r   c                      [         R                  " [        5         [        SSS5        S S S 5        g ! , (       d  f       g = f)Nr   r   r   r   r   test_ellipsoid_sign_parameters3r      s&    	
	#"b! 
$	#	#r   c                     [        SSS5      SS2SS2SS24   n [        SSSSS9nUSS2SS2SS24   n[        R                  " / SQ/ SQ/ SQ/ SQ/ SQ// SQ/ S	Q/ S	Q/ S	Q/ SQ// SQ/ S	Q/ S
Q/ S	Q/ SQ// SQ/ S	Q/ S	Q/ S	Q/ SQ// SQ/ SQ/ SQ/ SQ/ SQ//5      n[        XR	                  [
        5      5        [        XR	                  [
        5      5        g )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expecteds      r   test_ellipsoid_boolr*      s    Q1adAbD!B$./D Aq/B'"adAbD(89xx          ;$	
&HP t__T23')>?r   c                  b   [        SSSSS9SS2SS2SS24   n [        SSSSSS9nUSS2SS2SS24   n[        R                  " / S	Q/ S
Q/ SQ/ S
Q/ S	Q// S
Q/ SQ/ SQ/ SQ/ S
Q// SQ/ SQ/ SQ/ SQ/ SQ// S
Q/ SQ/ SQ/ SQ/ S
Q// S	Q/ S
Q/ SQ/ S
Q/ S	Q//5      n[        X5        [        X5        g )Nr   T)levelsetr   r
   r   r   )r    r,   )r         ?r   r-   r   )r-         ?      ?r.   r-   )r   r/           r/   r   )r.         п      r1   r.   )r/   r2         r2   r/   )r0   r3   g      r3   r0   )r   r"   r#   r   r&   s      r   test_ellipsoid_levelsetr4   H   s    Q1t,QrT1R42-=>D Aq/DQ'"adAbD(89xx ,,+,+ -./., ,/./+ -./., ,,+,+;$	
&HP D#$/r   c                     [        SSS5      u  p[        S[        R                  -  U SS9  [        SUSS9  [        SSS5      u  p[        S[        R                  -  U SS9  [        SUSS9  [        SS	S
5      u  p[        S[        R                  -  U SS9  [        SUSS9  [        SSS5      u  p[        S[        R                  -  S-  U SS9  [        S[        R                  -  USS9  g )N   
      i   gư>)atolg,a!@         i g-C6?gHF@i     i  )r   r   r"   pi)volsurfs     r   test_ellipsoid_statsrA   y   s    2r*ICD255L#D1,d>  Ar*ICD255L#D1,d>  B,ICFRUUNCd3,d>  B+ICD255L1$c5C"%%KD1r   c                  h   [         R                  " / SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ//[         R                  S9n [         R                  " S[         R                  S9nSnSn[	        X#UR
                  S9u  pEnSXXV4'   [        X5        g )	N)r   r   r   r   r   r!   dtyper      rF   )r   r   r   )rF   r   r=   )extentshaper   r"   r#   uint8zerosr   rH   r   )r)   imgstartrG   pprrccs          r   test_rect_3d_extentrQ      s    xx        -	
< hh? HB ((9BHH
-CEF5syyAJBBCB
Os%r   c                  h   [         R                  " / SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ// SQ/ SQ/ SQ/ SQ/ SQ//[         R                  S9n [         R                  " S[         R                  S9nSnSn[	        X#UR
                  S9u  pEnSXXV4'   [        X5        g )	Nr!   )r   r   r   r   r   rC   rE   )r   r   r   )r=   r   r=   )endrH   r   rI   )r)   rL   rM   rS   rN   rO   rP   s          r   test_rect_3d_endrT      s    xx        -	
< hh? HB ((9BHH
-CE
C5;JBBCB
Os%r   )numpyr"   skimage._shared.testingr   r   skimage.drawr   r   r   skimage._sharedr   r   r   r   r*   r4   rA   rQ   rT   r   r   r   <module>rY      s@     G > > #


.@b.0b2,'&T'&r   