a
    lh                     @   s   d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	 d dl
mZmZmZmZmZmZmZ d dlmZ d dlmZmZmZmZmZmZmZmZmZ edZd	d
 Zdd Z dS )    )pi)cossin)
CoordSys3D)ParametricRegionparametric_region_list)PointSegmentCurveEllipseLineParabolaPolygon)raises)	abrtxyzthetaphiCc            
      C   s  t d} | jdksJ | jdks$J | ji ks2J | jdks@J t ttftddf}|jttfksfJ |jtfksvJ |jdksJ t tttfttddf}|jtttfksJ |jttfksJ |jtdiksJ |jdksJ t dt d	t	 ftddft	d
df}|jdt d	t	 fks"J |jtt	fks6J |jtdt	diksNJ |jdks^J t ttd ft}|jtfksJ |ji ksJ |jdksJ t t
tt t
tt ft
tddt f}|jt
tt t
tt fksJ |jdks J t t
tt t
tt ft
ddftdtf}|jt
tt t
tt fksPJ |jt
tfksdJ |jt
dtdtfiksJ |jdksJ t ttt t	tt ftddf}|jtfksJ |jtdiksJ |jdksJ t t
tt t
tt tft
ddftddt ftddf}|jt
ttfks:J |jdksJJ t t
tt tt t
tt tt t
tt ft
tddt ftdtf}	|	jt
tt tt t
tt tt t
tt fksJ |	jt
ttfksJ |	jdksJ ttdd  ttdd  d S )N)       r            )r   r   	   i)r   r   )r!   r   r   )r"   r      )r   r#   r   c                   S   s"   t ttd  dt t ftdfS )Nr   r"   )r   r   r   r   r   r   V/var/www/auris/lib/python3.9/site-packages/sympy/vector/tests/test_parametricregion.py<lambda>E       z'test_ParametricRegion.<locals>.<lambda>c                   S   s$   t ttftd ttftdddfS )Nr   r      )r   r   r   r   r   r   r   r$   r%   F   r&   )r   Z
definition
parametersZlimitsZ
dimensionsr   r   r   r   r   r   r   r   r   r   r   r   r   
ValueError)
pointZline_xyZline_yzp1p2ZcircleZhalfdiscZellipseZcylinderZspherer   r   r$   test_ParametricRegion   s\    $*$,$$:2>r-   c                     sn  t dd} t| tdgks J tt dddd}t|ttdtt d dtt d ftddt fgksrJ tttd ftd	df}t|tttd ftd	dfgksJ t	t dd
dt ddd	}t|ttddt  d
dt  d
t d ftddfgks
J t	t ddd}t|tttdftddfgks@J t	t dddt ddd	}t|ttdddt d ftddfgksJ t	t ddt dd}t|tdgksJ t
ddd}t|ttddt  d	t d ftddftd	t d ddt  ftddftdt dt ftddfgks6J tt ddtt d	dt dd tt fdd d S )N   )r.   r/   r   r#   r'   r   r   r      ir    r   )r   r   8   )r/   r1   )r   r   )r#   )r   r   r      c                      s   t  S )N)r   r   r+   r   r$   r%   a   r&   z-test_parametric_region_list.<locals>.<lambda>)r   r   r   r   r   r   r   r   r
   r	   r   r   r   r   r)   )r*   ecss1s2Zs3Zpolyr   r4   r$   test_parametric_region_listI   s$    
@&@&0r"r:   N)!Zsympy.core.numbersr   Z(sympy.functions.elementary.trigonometricr   r   Zsympy.vector.coordsysrectr   Zsympy.vector.parametricregionr   r   Zsympy.geometryr   r	   r
   r   r   r   r   Zsympy.testing.pytestr   Z	sympy.abcr   r   r   r   r   r   r   r   r   r   r-   r:   r   r   r   r$   <module>   s   $,=