
    Og.                     H   d dl Zd dlZd dlZd dlmZmZmZmZmZ d dl	m
Z
mZmZ ej                  j                  de
ez         d        Zej                  j                  d eddg       edd	g      f eddg       edd
g      f eddg       eddg      f eddg       eg d      f eddg       eg d      f eddgddgg       eddgddgg      fg      d        Z e       5   eddej"                  fg       eddej"                  fg      f edej"                  ej"                  fg       edej"                  ej"                  fg      f eej"                  dfdg       eej"                  dfdg      f ed ej"                  fdg       ed ej"                  fdg      f eej"                  ej"                  fej"                  ej"                  fg       eej"                  ej"                  fej"                  ej"                  fg      f edddej"                  fg       edddej"                  fg      fgZddd       ej                  j                  de      d        Z e       5   ed dej"                  fddej"                  fg       ed dej"                  fddej"                  fg      f ed dej"                  fdg       ed dej"                  fdg      fgZddd       ej                  j                  de      d        Z e       5   ed ej"                  fdg       eddg      f eddej"                  fg       eddg      f ed dej"                  fdg       eddg      f edddej"                  fg       eddg      fgZddd       ej                  j                  de      d        Zd Zd Zd Zd Zej                  j                  de
      d        Zd Zy# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   wxY w)     N)
LinearRing
LineStringMultiLineStringPointPolygon)	all_typesall_types_zignore_invalidgeomc                 `    | | k(  sJ t        j                  | d d      }| |k(  sJ | |k7  rJ y )Nc                     | S N )xs    i/var/www/html/public_html/myphp/venv/lib/python3.12/site-packages/shapely/tests/geometry/test_equality.py<lambda>ztest_equality.<locals>.<lambda>   s    A     T)	include_z)shapely	transform)r   transformeds     r   test_equalityr   	   sA    4<<##D+FK;#$$#r   zleft, rightr   r      r   )r      )r   g    ?)r   r   r   )r   )      ?r   r   )r   r   )   r   c                     | |k7  sJ y r   r   leftrights     r   test_equality_falser#      s    & 5==r   r   r   r   r   )r   r   )r   r   r   r   c                      | |k(  rJ | |k7  sJ y r   r   r    s     r   test_equality_with_nanr&   E   s     5==r   r   r      c                 V    t         j                  dk  r| |k(  sJ | |k7  rJ y | |k7  sJ y )Nr      r   )r   geos_versionr    s     r   test_equality_with_nan_zr-   [   s;     j(u}}EM""M u}}r   c                     | |k7  sJ y r   r   r    s     r   test_equality_with_nan_falser/   o   s    5==r   c                  V   t               5  t        ddt        j                  fddt        j                  fg      } t        ddt        j                  fdg      }d d d        t        j
                  dk  r k(  sJ y t        j
                  dk  r k(  sJ y  k7  sJ y # 1 sw Y   GxY w)Nr   r   r   r   r'   r   
   r   r*   )r
   r   npnanr   r,   r    s     r   test_equality_with_nan_z_falser5   t   s    		 8Aq"&&>Aq"&&>:;Q266NI678 j( u}}			
	* u}}u}}8 8s   ABB(c                      t        dd      } t        ddd      }| |k7  sJ t        ddt        j                        }t        j                  dk  r| |k(  sJ y t        j                  dk  r| |k(  sJ y | |k7  sJ y )Nr   r   r1   r*   )r   r3   r4   r   r,   geom1geom2s     r   test_equality_zr:      s~    !QKE!QNEE>> !QEj( ~~			
	* ~~~~r   c                      t        g d      } t        g d      }t        g d      }| |k7  sJ | |k7  sJ ||k7  sJ t        j                  d      } t        j                  d      }| |k7  sJ y )N)r   r   r$   r   zPOINT EMPTYzLINESTRING EMPTY)r   r   r   r   from_wkt)r8   r9   geom3s      r   test_equality_exact_typer>      sv    78E78E45EE>>E>>E>> ]+E/0EE>>r   c                  *   t        j                  d      } t        j                  d      }| |k7  sJ t        j                  d      } t        j                  d      }| |k7  sJ t        j                  d      } t        j                  d      }| |k7  sJ y )Nz'POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0))z'POLYGON ((0 0, 10 0, 10 10, 0 15, 0 0))z=POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (1 1, 2 1, 2 2, 1 1))zSPOLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (1 1, 2 1, 2 2, 1 1), (3 3, 4 3, 4 4, 3 3))zSPOLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (3 3, 4 3, 4 4, 3 3), (1 1, 2 1, 2 2, 1 1)))r   r<   r7   s     r   test_equality_polygonr@      s    FGEFGEE>> GE ]E E>> ]E ]E E>>r   c                    | j                  d      t        u sJ t        j                  | | gt              }|| k(  }t        |t        j                        sJ |j                         sJ | |k(  }t        |t        j                        sJ |j                         sJ || k7  }t        |t        j                        sJ |j                         rJ | |k7  }t        |t        j                        sJ |j                         rJ y )Nr   )dtype)	__eq__NotImplementedr3   arrayobject
isinstancendarrayallany)r   arrresults      r   test_comparison_notimplementedrM      s     ;;q>^+++ ((D$<v
.CD[Ffbjj)))::<<S[Ffbjj)))::<<D[Ffbjj)))zz|S[Ffbjj)))zz||r   c                     t        dd      } t        dd      }t        j                  t        d      5  | |kD   d d d        t        j                  t        d      5  | |k   d d d        t        j                  t        d      5  | |k\   d d d        t        j                  t        d      5  | |k   d d d        y # 1 sw Y   xY w# 1 sw Y   hxY w# 1 sw Y   KxY w# 1 sw Y   y xY w)Nr   r   znot supported between instances)match)r   pytestraises	TypeErrorr7   s     r   test_comparison_not_supportedrS      s    !QKE!QKE	y(I	J  
y(I	J  
y(I	J  
y(I	J      s/   B>C
C/C">C
CC"C+)numpyr3   rP   r   r   r   r   r   r   shapely.tests.commonr   r	   r
   markparametrizer   r#   r4   cases1r&   cases2r-   cases3r/   r5   r:   r>   r@   rM   rS   r   r   r   <module>r[      s      K K G G [!89% :%  
VV$	%z662B'CD	VV$	%z6>2J'KL	VV$	%z662B'CD	VV$	%z2J'KL	VV$	%z2N'OP ff-/?@Aff-/?@A	
$%$  	Va[)	*JBFF7L,MN 012 012	
 
bffa[&)	*JV7L,MN	a[&)	*JBFFV7L,MN(266266*:;<(266266*:;<	
 	Aq"&&>23	Aq"&&>23	
%F< / 0  
 ArvvArvv78ArvvArvv78	

 Arvv	23Arvv	23	
	F
 / 0  	a[&)	*J7G,HI	Va[)	*J7G,HI	aBFF^Y/	0*i=S2TU	YArvv/	0*i=S2TU	F / 0$*2 + ,6q N
 
0 s'   -EO>9A7P!BP>PPP!