
    _ hH                     "   d dl Zd dlZd dlmZ d dlZd dlmZmZ d dlm	Z	 d dl
mZmZmZmZmZ ej                   Zej$                  Zej(                  Zej,                  j/                  dej                   ej$                  ej0                  g      ej,                  j/                  d ej2                  d       ej2                  d	       ej2                  d
      d ej4                  dde      g      d               Zej,                  j/                  dej:                  ej<                  ej>                  ej(                  g      ej,                  j/                  d ej@                  ddgejB                        d ej@                  egg      dg      d               Z"ej,                  j/                  dej                   ej$                  ej0                  g      ej,                  j/                  degdd dgdgg      d               Z# ej2                  de      Z$de$jJ                  _&        ej,                  j/                  dej                   ej$                  ej(                  g      ej,                  j/                  dg d ej2                  d      e$ ej2                  de       ej2                  de       ej2                  de      g      d               Z'd Z(d  Z)d! Z*ej,                  j/                  d"d dgeeedgfd dgedeegfddgddeegfg      d#        Z+ej,                  j/                  d$ddgddggd d g eddgddgg      gfg d%g d&gd d g eg d%g d&g      gfddgddgddgddggg d' eddgddgg       eddgddgg      gfg      d(        Z,d) Z-ej,                  j/                  d"g d*eeedgfg d+edeegfg d,ddeegfg      d-        Z.ej,                  j/                  dddgd e/d.      gddggg      d/        Z0ej,                  j/                  d$ddgd e/d.      gddggg d0 eddgddgg      gfg      d1        Z1d2 Z2d3 Z3d4 Z4ej,                  j/                  dddgddgddgddggddgddgddggg      d5        Z5ej,                  j/                  dddgddggdejl                  gddgddgddggg      d6        Z7d7 Z8ej,                  j/                  d"g d8eddegfg d9dedegfg d:dddegfg      d;        Z9ej,                  j/                  d<ddg      ej,                  j/                  d=d>d?g      d@               Z:ej,                  j/                  dddgddgd e/d.      gddggg      dA        Z;ej,                  j/                  dddgddgddgd e/d.      gddggddgddgd e/d.      gddggddgddgddgddgd e/d.      ggd e/d.      gddgddgddgddggddgddgddgd e/d.      ggd e/d.      gddgddgddggg      dB        Z<dC Z=dD Z>dE Z? ej0                  g dF      Z@ ej0                  g dG      ZA ej                  e      ZC e       ZD ej                  ee@gH      ZE ej                  eeAgH      ZF ej                  ee@eAgH      ZGej,                  j/                  dIeegd dgeCeCgfdegd dgeDeCgfdeddgg d'eCeDgfee@egg dJeEeCgfeee@gg dKeCeEgfdeee@gg d'eCeEgfedee@gg d'eCeEgfedee@gg dLeCeEgfeede@gg dLeCeEgfeee@dgg dLeCeEgfee@eAegg dMeGeCgfee@eeAgg d'eEeFgfeee@eAgg dLeCeGgfee@deAegg dNeGeCgfee@deeAgg dOeEeFgfee@edeAgg dPeEeFgfg      dQ        ZHej,                  j/                  d"d dgeCeCedgfd dgeCdeeCgfddgddeCeCgfg      dR        ZIej,                  j/                  dej                  ej:                  ej<                  ej>                  ej(                  g      ej,                  j/                  d ej@                  eg      dd dgdgg      dS               ZJej,                  j/                  dTeegd d g eeeg      gfeegd dg eeg       eeg      gfedgd d g eeg      gfedgd dg eeg       eg       gfdeddgg d' eeg       eg       gfedegg d0 eeeg      gfg      dU        ZKdV ZLej,                  j/                  d"d d g eeeg      ddegfddgddd eeeg      gfg      dW        ZMdX ZNdY ZOdZ ZPd[ ZQej,                  j/                  d\egej                  fegej                  fegej                  fegej:                  fegej:                  fegej<                  fegej<                  fegej>                  fegej>                  fg	      d]        ZRd^ ZSd_ ZTd` ZUda ZVdb ZWdc ZXdd ZYde ZZy)f    N)assert_array_equal)
LinearRingPolygon)assert_geometries_equal)empty_pointline_stringlinear_ringpointpolygonfunccoordinates)   )r         )r   r   )r   r   foodtypec                     t        j                  t        t        f      5   | |ddg       d d d        y # 1 sw Y   y xY wNr   r   indicespytestraises	TypeError
ValueError)r   r   s     /home/developers/rajanand/mypropertyqr-fmb-refixing-v2/venv/lib/python3.12/site-packages/shapely/tests/test_creation_indices.pytest_invalid_coordinatesr      s8     
	:.	/ *[1a&)* * *   6?
geometriesr   r   helloc                     t        j                  t        t        f      5   | |ddg       d d d        y # 1 sw Y   y xY wr   r   )r   r    s     r   test_invalid_geometriesr#   !   s8     
	:.	/ )Z!Q() ) )r   r   z helloc                     t        j                  t        t        f      5   | ddgg|       d d d        y # 1 sw Y   y xY w)N皙?333333?r   r   r   r   s     r   test_invalid_indices_simpler)   2   s:    
 
	:.	/ ,sCj\7+, , ,s	   7A    Fout)NNNr*   r    c                 6   | t         j                  u rddgddgg}ddg}n;| t         j                  u rddgddgddgddgdd	gd	d	gg}g d
}nt        t        g}ddg}t        j                  t        t        f      5   | |||       d d d        y # 1 sw Y   y xY w)Nr&   r'   皙?g      ?r   r   r   r*   r   )r   r   r   r   r   r   r   r+   )	shapelypointslinestringsr
   r   r   r   r   r   )r   r+   xr   s       r   test_invalid_outr5   ?   s     w~~3Z#s$a&	$$	$VaVaVaVaVaV<$K a&		:.	/ *QS)* * *s   :BBc                      t        j                  t        j                        5  t        j                  ddgddggddg       d d d        y # 1 sw Y   y xY wNr   r   r   r   )r   r   r1   GEOSExceptionr2   r-       r   test_points_invalidr:   [   sH    	w,,	- 9AA'!Q89 9 9    AAc                      t        j                  t        j                  ddgddggt              t        j                  ddgt        j
                              } t        | t        t        g       y )Nr   r*   r   r   r   r   )r1   r2   nparrayfloatintpr   r
   actuals    r   test_pointsrC   a   sQ    ^^
1a&1a&!/!Qrww/F FUEN3r9   c                     t        j                  t              5  t        j                  t        j                  ddgddggt              t        j                  ddgt
        j                               d d d        y # 1 sw Y   y xY w)Nr   r*   r   r   r   )	r   r   r   r1   r2   r=   r>   r?   r@   r-   r9   r   test_points_no_index_raisesrE   i   s`    	z	" 
HHq!fq!f%U3HHaV2773	

 
 
s   AA??Bzindices,expectedc                     t        j                  dt              }t        |d<   t	        j
                  ddgddgg| |      }t        ||       ||u sJ y )Nr   r   r   r*   r0   )r=   emptyobjectr   r1   r2   r   r   expectedr+   rB   s       r   test_points_outrK   q   sY     ((1F
#CCF^^
Q!QF
 C*S==r9   zcoordinates,indices,expected)r   r   r   )r   r   r   r   r   r   r   c                     t        j                  t        j                  | t              t        j                  |t        j
                              }t        ||       y Nr   r   r1   r3   r=   r>   r?   r@   r   r   r   rJ   rB   s       r   test_linestringsrQ      s?       
E*BHHWBGG4TF FH-r9   c                      t        j                  t        j                        5  t        j                  ddgddggddg       d d d        y # 1 sw Y   y xY wr7   )r   r   r1   r8   r3   r-   r9   r   test_linestrings_invalidrS      sJ    	w,,	- >aVaV,q!f=> > >r;   )r   r   r   r   r   r   )r   r   r   r*   r*   r*   )r   r   r   r*   r*   r*   c                     t        j                  dt              }t        |d<   t	        j
                  g d| |      }t        ||       ||u sJ y )Nr   r   r   )r   r   r   r   r   r   rU   rV   rW   r0   )r=   rG   rH   r   r1   r3   r   rI   s       r   test_linestrings_outrX      sN     ((1F
#CCF  8F
 C*S==r9   nanc                     t        j                  t        j                  | t              t        j
                  t        |       t        j                              }t        t        j                  |      |        y rN   )
r1   r3   r=   r>   r?   zeroslenr@   r   get_coordinatesr   rB   s     r   test_linestrings_allow_nanr_      P       
E*[)9F w..v6Dr9   r   r   r   c                     t        j                  t        j                  | t              t        j                  |t        j
                        d      }t        ||       y )Nr   skipr   
handle_nanrO   rP   s       r    test_linestrings_handle_nan_skiprf      sC       
E*0F
 FH-r9   c                      t        j                  t        j                        5  t        j                  ddgdt        d      ggddgd       d d d        y # 1 sw Y   y xY w)Nr   r   rY   r   rc   rd   )r   r   r1   r8   r3   r?   r-   r9   r   (test_linestrings_handle_nan_skip_invalidrh      sT    	w,,	- 
Vau&'!QF	

 
 
s   *AA c                      t        j                  t        j                  dt        j                        g dd      } | d   j
                  sJ y )Nr,   
fill_valuera   rc   rd   r   )r1   r3   r=   fullrY   is_emptyrA   s    r   )test_linestrings_handle_nan_skip_only_nanrn      s=      
266*I&F !9r9   c                      t        j                  t        d      5  t        j                  ddgt        d      dgddggg dd       d d d        y # 1 sw Y   y xY w)	N.*NaN.*matchr   rY   r   ra   errorrd   )r   r   r   r1   r3   r?   r-   r9   r   !test_linestrings_handle_nan_errorrt      sR    	z	3 
VeElA&A/w	

 
 
s   -AAc                    t        j                  t        j                  | t        j                        t        j
                  t        |       t        j                              }t        |t        j                  |              y rN   	r1   linearringsr=   r>   float64r[   r\   r@   r   r^   s     r   test_linearringsry      sT       
BJJ/[)9F FG$7$7$DEr9   c           	          t        j                  t        j                  t        f      5  t        j
                  | t        j                  t        |                    d d d        y # 1 sw Y   y xY wNr   )	r   r   r1   r8   r   rw   r=   r[   r\   )r   s    r   test_linearrings_invalidr|      sR     
--z:	; MK#k:J1KLM M Ms   4A''A0c                      t        j                  g dt        j                  d            } t	        | t        g d             y )N)rU   rU   rU   r*   r   )rU   rU   rU   rU   )r1   rw   r=   r[   r   r   rA   s    r   *test_linearrings_unclosed_all_coords_equalr~      s-      !9288A;OFFJ/O$PQr9   r   r   r   r   r   )r   r   r   r   r   )r*   r*   r*   r*   r*   c                     t        j                  dt              }t        |d<   t	        j
                  g d| |      }t        ||       ||u sJ y )Nr   r   r*   )rU   rV   rW   )r   r   rU   r0   )r=   rG   rH   r   r1   rw   r   rI   s       r   test_linearrings_outr     sN     ((1F
#CCF  0F
 C*S==r9   dimorderCFc                    t         j                  j                  dd|       }t        j                  |j	                  d|       |      }t        j
                  t        d      d      }t        j                  ||      }t        j                  ||d d dgd d f   f      }t        j                  |j	                  d|       |      }t        j
                  t        d      d      }t        j                  ||      }t        ||       y )	N
   r   (   )r   r   r   2      )r=   randomrandnasarrayreshaperepeatranger1   rw   hstackr   )	r   r   coordscoords1indices1result1coords2indices2result2s	            r   test_linearrings_bufferr     s     YY__RC(Fjj4EBGyyrA&H!!'8<G iiA3	!234Gjj5UCGyyrA&H!!'8<GGW-r9   c                     t        j                  t        j                  | t              t        j
                  t        |       t        j                              }t        t        j                  |      |        y rN   )
r1   rw   r=   r>   r?   r[   r\   r@   r   r]   r^   s     r   test_linearrings_allow_nanr   %  r`   r9   c                    t        j                  t        j                  | t        j                        t        j
                  t        |       t        j                        d      }t        |t        j                  | d             y )Nr   rc   rd   )re   rv   r^   s     r    test_linearrings_handle_nan_skipr   3  sZ       
BJJ/[)9F
 FG$7$7PV$WXr9   c                      t        j                  t              5  t        j                  ddgt        d      dgddggg dd       d d d        y # 1 sw Y   y xY w)Nr   rY   ra   rc   rd   r   r   r   r1   rw   r?   r-   r9   r   (test_linearrings_handle_nan_skip_invalidr   G  sP    	z	" 
VeElA&A/v	

 
 
s   -AAc                      t        j                  t        j                  dt        j                        dgdz  d      } | d   j
                  sJ y )N)r   r   rj   r   r   rc   rd   )r1   rw   r=   rl   rY   rm   rA   s    r   )test_linearrings_handle_nan_skip_only_nanr   O  sC      
266*QC!GF !9r9   c            
          t        j                  t        d      5  t        j                  ddgddgddgdt        d      gddggg dd       d d d        y # 1 sw Y   y xY w)	Nrp   rq   r   r   rY   r   rs   rd   r   r-   r9   r   !test_linearrings_handle_nan_errorr   W  s`    	z	3 
VaVaVau%6A?#	

 
 
s   3AA!))r&   r&   )r&   r/   )r/   r/   ))333333?r   )r   皙?)r   r   )holeszrings,indices,expected)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   r   r   r   r   c                     t        j                  t        j                  | t              t        j                  |t        j
                              }t        ||       y rN   )r1   polygonsr=   r>   rH   r@   r   )ringsr   rJ   rB   s       r   test_polygonsr   i  s@    \ 
f%rxxrww/OF FH-r9   c                     t        j                  dt              }t        |d<   t	        j
                  t        t        g| |      }t        ||       ||u sJ y )Nr   r   r   r0   )r=   rG   rH   r   r1   r   r	   r   rI   s       r   test_polygons_outr     sL     ((1F
#CCF{K8'sSFC*S==r9   c                     t        j                  t        t        f      5   | t        g|       d d d        y # 1 sw Y   y xY wr{   )r   r   r   r   r
   r(   s     r    test_invalid_indices_collectionsr     s6     
	:.	/ 'eWg&' ' 's	   9Azgeometries,indices,expectedc                 |    t        j                  t        j                  | t              |      }t        ||       y rN   )r1   geometrycollectionsr=   r>   rH   r   )r    r   rJ   rB   s       r   test_geometrycollectionsr     s0     ((
6*GF FH-r9   c                      t        j                  t              5  t        j                  t        j                  t        t        gt              ddg       d d d        y # 1 sw Y   y xY w)Nr   r   r   r   )
r   r   r   r1   r   r=   r>   r
   r   rH   r-   r9   r   (test_geometrycollections_no_index_raisesr     sJ    	z	" 
##HHe[)81a&	

 
 
s   =A  A)c                     t        j                  dt              }t        |d<   t	        j
                  t        t        g| |      }t        ||       ||u sJ y )Nr   r   r*   r0   )	r=   rG   rH   r   r1   r   r
   r   r   rI   s       r   test_geometrycollections_outr     sM     ((1F
#CCF((%)=wTWXFC*S==r9   c                      t        j                  t        j                  t        gt
              t        j                  dt        j                              } t        | t        j                  t        g             y Nr   r   r   )	r1   multipointsr=   r>   r
   rH   r[   r@   r   rA   s    r   test_multipointsr     sL      
%'!2771KF FG$7$7$@Ar9   c                      t        j                  t        j                  t        gt
              t        j                  dt        j                              } t        | t        j                  t        g             y r   )	r1   multilinestringsr=   r>   r   rH   r[   r@   r   rA   s    r   test_multilinestringsr     L    %%
+f-rxx7QF FG$<$<k]$KLr9   c                      t        j                  t        j                  t        gt
              t        j                  dt        j                              } t        | t        j                  t        g             y r   )	r1   r   r=   r>   r	   rH   r[   r@   r   rA   s    r   test_multilinearringsr     r   r9   c                      t        j                  t        j                  t        gt
              t        j                  dt        j                              } t        | t        j                  t        g             y r   )	r1   multipolygonsr=   r>   r   rH   r[   r@   r   rA   s    r   test_multipolygonsr     sL    ""
'&)288ARWW3MF FG$9$97)$DEr9   zgeometries,funcc                 v    t        j                  t              5   || dg       d d d        y # 1 sw Y   y xY w)Nr   r   )r   r   r   )r    r   s     r   test_incompatible_typesr     s1     
y	! &Z!%& & &s   /8c                      t        j                  d      5  t        j                  ddgddggd d ddg       d d d        y # 1 sw Y   y xY w)Nz8positional argument `indices` for `points` is deprecatedrq   r   r   r   r*   )r   deprecated_callr1   r2   r-   r9   r    test_points_deprecate_positionalr     sM    			H
 = 	AA'taV<= = =s   !AA
c                      t        j                  d      5  t        j                  ddgddgddgd	d
ggd d g d       d d d        y # 1 sw Y   y xY w)Nz=positional argument `indices` for `linestrings` is deprecatedrq   r   r   r   r*   r   r         rL   )r   r   r1   r3   r-   r9   r   %test_linestrings_deprecate_positionalr     s[    			M
 X 	aVaVaVaV<dD,WX X Xs   'AAc                      t        j                  d      5  t        j                  ddgddgddggd d g d       d d d        y # 1 sw Y   y xY w)Nz=positional argument `indices` for `linearrings` is deprecatedrq   r   r   ra   )r   r   r1   rw   r-   r9   r   %test_linearrings_deprecate_positionalr   "  sU    			M
 M 	aVaVaV4dD)LM M M   $AAc                      t        j                  d      5  t        j                  t        t        gd ddg       d d d        y # 1 sw Y   y xY w)Nz:positional argument `indices` for `polygons` is deprecatedrq   r   r   )r   r   r1   r   r	   r-   r9   r   "test_polygons_deprecate_positionalr   )  sI    			J
 C 	+{3TAq6BC C Cr   c                      t        j                  d      5  t        j                  t        t        gddg       d d d        y # 1 sw Y   y xY w)Nz=positional argument `indices` for `multipoints` is deprecatedrq   r   r   )r   r   r1   r   r
   r-   r9   r   %test_multipoints_deprecate_positionalr   0  sB    			M
 4 	UENQF34 4 4   #AAc                      t        j                  d      5  t        j                  t        t        gddg       d d d        y # 1 sw Y   y xY w)NzBpositional argument `indices` for `multilinestrings` is deprecatedrq   r   r   )r   r   r1   r   r   r-   r9   r   *test_multilinestrings_deprecate_positionalr   7  sG    			R
 E 	  +{!;aVDE E Er   c                      t        j                  d      5  t        j                  t        t        gddg       d d d        y # 1 sw Y   y xY w)Nz?positional argument `indices` for `multipolygons` is deprecatedrq   r   r   )r   r   r1   r   r   r-   r9   r   'test_multipolygons_deprecate_positionalr   >  sC    			O
 : 	w01a&9: : :r   c                      t        j                  d      5  t        j                  t        t
        gddg       d d d        y # 1 sw Y   y xY w)NzEpositional argument `indices` for `geometrycollections` is deprecatedrq   r   r   )r   r   r1   r   r
   r   r-   r9   r   -test_geometrycollections_deprecate_positionalr   E  sC    			U
 > 	##UG$4q!f=> > >r   )[numpyr=   r   numpy.testingr   r1   r   r   shapely.testingr   shapely.tests.commonr   r   r	   r
   r   r2   pntsr3   lstrsr   	geom_collmarkparametrizerw   rG   rl   rH   r   r   r   r   r>   r@   r#   r)   non_writeableflags	writeabler5   r:   rC   rE   rK   rQ   rS   rX   r?   r_   rf   rh   rn   rt   ry   rY   r|   r~   r   r   r   r   r   r   r   hole_1hole_2r   poly
poly_emptypoly_hole_1poly_hole_2poly_hole_1_2r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r-   r9   r   <module>r      sy     ,  ' 3 V V~~''	 
W^^W00'2E2EF V,	*	*
 
  ##	 8288QF"''2D("((UG9:MwW))
 
W^^W00'2E2EF eWhA$EF, G,
 &) %    
W^^W00'2M2MN 	v&6"V$
*
*94
 
Q%T23
Q%{E23
Q$eU+,		 "a&1a&	Aq6EAq6Aq6*:$;#<=
Y	!Q%I0F*G)HIVaVaVaV,QFQF#$eaVaV,<&=>	
..> 	k;TJK	k4kJK	dD+{CD		 
Q!U5\"QF+EE "a&1eEl#aV	,i%!Q!Q@P:Q9RS..

 q!fq!fq!fq!f51a&1a&1a&9QSFF a&1a&	bff+1v1v1v	.MM
R
 	;dK@A	4dK@A	4t[9:		 A'3*-. . (. 
Q!Q!U5\*QF3EE 
Q!Q!Q!U5\!2QF;
Q!Q!U5\*QF3
Q!Q!Q!Q!U5\):;
U5\	QFQFQFQF;
Q!Q!Q!U5\!23
U5\	QFQFQF3
Y
Y

 
		A	B			A	Bw$Y
g{6(;g{6(;   VV4DE 
{	#aVdD\:
	q!fz4&89
T4	(,z8JK
v{	+Yd8KL
{F	+Y{8KL
[&	1<$ATU
t[&	1<$ATU
t[&	1<$ATU
{D&	1<$ATU
{FD	1<$ATU&&+6D!	
 &+v6+&	
 +vv6=!	
 &$<D!	
 &$V<+&	
 &+tV<+&	
I),Z.[,Z. 
Q$k401
Q$k401
Q$dD)* 
  ##	 XRXXug%61a&2$$OP' Q	'
 !
	1v	5+2F(G'HI
	1v	5'(:I{m<T'UV
AE7!3 45
AE7!3Yr] CD
tT	"L9eW3EyQS}2UV
{	#YE;;O1P0QR
.
.
 
Q)UK014{KL
Q$dIuk.B$CDEBMMF 
'""#
(()
G$$%
++,
G''(
'**+
G,,-
'''(
--.
&&
=XMC4E:>r9   