Ë
    ~ìqjÄ  ã                   óÖ   — d dl Z d dlZd dlmZ d dlmZmZ d dlmZm	Z	 ej                  j                  d ed«       ed«      g«      d„ «       Z G d	„ d
e j                  «      Zd„ Zd„ Zy)é    N)Úgeometry)ÚBufferCapStyleÚBufferJoinStyle)Ú	CAP_STYLEÚ
JOIN_STYLEÚdistanceÚnanÚinfc                 ó²   — t        j                  dd«      }t        j                  t        d¬«      5  |j                  | «       d d d «       y # 1 sw Y   y xY w)Nr   zdistance must be finite©Úmatch)r   ÚPointÚpytestÚraisesÚ
ValueErrorÚbuffer)r   Úgs     ú\/var/www/html/truck-me/venv/lib/python3.12/site-packages/shapely/tests/legacy/test_buffer.pyÚtest_non_finite_distancer   
   sB   € ä�‰�q˜!Ó€AÜ	�‰”zÐ)BÔ	Cñ Ø	�‰�Ô÷÷ ñ ús   ²AÁAc                   óR   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zy)ÚBufferTestszCTest Buffer Point/Line/Polygon with and without single_sided paramsc                 ón   — t        j                  dd«      }|j                  d«      }|j                  sJ ‚y )Nr   )r   r   r   Úis_empty©Úselfr   Úhs      r   Ú
test_emptyzBufferTests.test_empty   s+   € Ü�N‰N˜1˜aÓ ˆØ�H‰H�Q‹KˆØ�zŠzÐ‰zó    c                 óZ  — t        j                  dd«      }|j                  dd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   é   ©Ú	quad_segsÚPolygon©©ç      ð?ç        ©r   ç      ð¿)r)   r   )r   r&   r%   ©	r   r   r   Ú	geom_typeÚ	enumerateÚexteriorÚcoordsr   Úapprox©r   r   r   Úexpected_coordÚindexÚcoords         r   Ú
test_pointzBufferTests.test_point   s©   € Ü�N‰N˜1˜aÓ ˆØ�H‰H�Q !ˆHÓ$ˆØ�{‰{˜iÒ'Ð'Ð'ÚQˆÜ% a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 ó\  — t        j                  dd«      }|j                  ddd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   r    T©r"   Úsingle_sidedr#   r$   r*   r0   s         r   Útest_point_single_sideddz$BufferTests.test_point_single_sidedd"   s«   € Ü�N‰N˜1˜aÓ ˆØ�H‰H�Q !°$ˆHÓ7ˆØ�{‰{˜iÒ'Ð'Ð'ÚQˆÜ% a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 ód  — t        j                  ddgddgg«      }|j                  dd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   r    r!   r#   )©r)   r&   )r   ç       @©r&   r&   r%   r(   ©r)   r'   r:   ©	r   Ú
LineStringr   r+   r,   r-   r.   r   r/   r0   s         r   Ú	test_linezBufferTests.test_line+   sº   € Ü×Ñ ! Q ¨!¨Q¨Ð 0Ó1ˆØ�H‰H�Q !ˆHÓ$ˆØ�{‰{˜iÒ'Ð'Ð'ò
ˆô & a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 óf  — t        j                  ddgddgg«      }|j                  ddd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   r    Tr6   r#   )©r'   r&   ©r'   r'   r=   r:   rB   r>   r0   s         r   Útest_line_single_sideded_leftz)BufferTests.test_line_single_sideded_left<   s¸   € Ü×Ñ ! Q ¨!¨Q¨Ð 0Ó1ˆØ�H‰H�Q !°$ˆHÓ7ˆØ�{‰{˜iÒ'Ð'Ð'ÚWˆÜ% a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 óf  — t        j                  ddgddgg«      }|j                  ddd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   r    éÿÿÿÿTr6   r#   )rC   rB   r<   r%   rC   r>   r0   s         r   Útest_line_single_sideded_rightz*BufferTests.test_line_single_sideded_rightE   s¸   € Ü×Ñ ! Q ¨!¨Q¨Ð 0Ó1ˆØ�H‰H�R 1°4ˆHÓ8ˆØ�{‰{˜iÒ'Ð'Ð'ÚUˆÜ% a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 óv  — t        j                  ddgddgddgddgddgg«      }|j                  dd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   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/   r0   s         r   Útest_polygonzBufferTests.test_polygonN   sÌ   € Ü×Ñ˜q !˜f q¨! f¨q°!¨f°q¸!°f¸qÀ!¸fÐEÓFˆØ�H‰H�Q !ˆHÓ$ˆØ�{‰{˜iÒ'Ð'Ð'ò

ˆô & a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 óx  — t        j                  ddgddgddgddgddgg«      }|j                  ddd¬«      }|j                  dk(  sJ ‚g d¢}t	        |j
                  j                  «      D ]K  \  }}|d   t        j                  ||   d   «      k(  sJ ‚|d   t        j                  ||   d   «      k(  rŒKJ ‚ y )Nr   r    Tr6   r#   rI   rJ   r0   s         r   Útest_polygon_single_sidededz'BufferTests.test_polygon_single_sidededa   sÎ   € Ü×Ñ˜q !˜f q¨! f¨q°!¨f°q¸!°f¸qÀ!¸fÐEÓFˆØ�H‰H�Q !°$ˆHÓ7ˆØ�{‰{˜iÒ'Ð'Ð'ò

ˆô & a§j¡j×&7Ñ&7Ó8ò 	G‰LˆE�5Ø˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÒFÐFÐFØ˜‘8œvŸ}™}¨^¸EÑ-BÀ1Ñ-EÓFÓFÐFÐFñ	Gr   c                 ó¤  — t         j                  dk(  sJ ‚t         j                  t        j                  k(  sJ ‚t         j                  dk(  sJ ‚t         j                  t        j                  k(  sJ ‚t         j                  dk(  sJ ‚t         j                  t        j                  k(  sJ ‚t
        j                  dk(  sJ ‚t
        j                  t        j                  k(  sJ ‚t
        j                  dk(  sJ ‚t
        j                  t        j                  k(  sJ ‚t
        j                  dk(  sJ ‚t
        j                  t        j                  k(  sJ ‚y )Nr    é   é   )	r   Úroundr   ÚflatÚsquarer   r   ÚmitreÚbevel)r   s    r   Útest_enum_valueszBufferTests.test_enum_valuest   s  € Ü�‰ !Ò#Ð#Ð#Ü�‰¤.×"6Ñ"6Ò6Ð6Ð6Ü�~‰~ Ò"Ð"Ð"Ü�~‰~¤×!4Ñ!4Ò4Ð4Ð4Ü×Ñ 1Ò$Ð$Ð$Ü×Ñ¤>×#8Ñ#8Ò8Ð8Ð8ä×Ñ 1Ò$Ð$Ð$Ü×Ñ¤?×#8Ñ#8Ò8Ð8Ð8Ü×Ñ 1Ò$Ð$Ð$Ü×Ñ¤?×#8Ñ#8Ò8Ð8Ð8Ü×Ñ 1Ò$Ð$Ð$Ü×Ñ¤?×#8Ñ#8Ò8Ð8Ñ8r   c                 ót  — t        j                  ddgddgg«      }|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚y )Nr   r    )Ú	cap_stylerQ   rR   rS   )r   r?   r   r   rQ   r   rR   rS   r   s      r   Útest_cap_stylezBufferTests.test_cap_styleƒ   s  € Ü×Ñ ! Q ¨!¨Q¨Ð 0Ó1ˆØ�H‰H�Q¤.×"6Ñ"6ˆHÓ7ˆØ�A—H‘H˜Q¬)¯/©/�HÓ:Ò:Ð:Ð:Ø�A—H‘H˜Q¨'�HÓ2Ò2Ð2Ð2à�H‰H�Q¤.×"5Ñ"5ˆHÓ6ˆØ�A—H‘H˜Q¬)¯.©.�HÓ9Ò9Ð9Ð9Ø�A—H‘H˜Q¨&�HÓ1Ò1Ð1Ð1à�H‰H�Q¤.×"7Ñ"7ˆHÓ8ˆØ�A—H‘H˜Q¬)×*:Ñ*:�HÓ;Ò;Ð;Ð;Ø�A—H‘H˜Q¨(�HÓ3Ò3Ð3Ñ3r   c                 ót  — t        j                  ddgddgg«      }|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚|j                  dt        j                  ¬«      }||j                  dt
        j                  ¬«      k(  sJ ‚||j                  dd¬«      k(  sJ ‚y )Nr   r    )Ú
join_stylerQ   rT   rU   )r   r?   r   r   rQ   r   rT   rU   r   s      r   Útest_buffer_stylezBufferTests.test_buffer_style‘   s  € Ü×Ñ ! Q ¨!¨Q¨Ð 0Ó1ˆØ�H‰H�Q¤?×#8Ñ#8ˆHÓ9ˆØ�A—H‘H˜Q¬:×+;Ñ+;�HÓ<Ò<Ð<Ð<Ø�A—H‘H˜Q¨7�HÓ3Ò3Ð3Ð3à�H‰H�Q¤?×#8Ñ#8ˆHÓ9ˆØ�A—H‘H˜Q¬:×+;Ñ+;�HÓ<Ò<Ð<Ð<Ø�A—H‘H˜Q¨7�HÓ3Ò3Ð3Ð3à�H‰H�Q¤?×#8Ñ#8ˆHÓ9ˆØ�A—H‘H˜Q¬:×+;Ñ+;�HÓ<Ò<Ð<Ð<Ø�A—H‘H˜Q¨7�HÓ3Ò3Ð3Ñ3r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r4   r8   r@   rD   rG   rK   rM   rV   rY   r\   © r   r   r   r      sC   „ ÙMòò
GòGòGò"GòGòGò&Gò&9ò4ó4r   r   c                  óþ   — t        j                  dd«      } t        j                  t        «      5  | j                  dd¬«      }d d d «       | j                  dd¬«      }j                  |«      sJ ‚y # 1 sw Y   Œ0xY w)Nr   r    )Úquadsegsr!   )r   r   r   ÚwarnsÚFutureWarningr   Úequals©ÚpointÚresultÚexpecteds      r   Útest_deprecated_quadsegsrk       si   € Ü�N‰N˜1˜aÓ €EÜ	�‰”mÓ	$ñ -Ø—‘˜a¨!�Ó,ˆ÷-à�|‰|˜A¨ˆ|Ó+€HØ�=‰=˜Ô"Ð"Ñ"÷-ð -ús   °A3Á3A<c                  óø   — t        j                  dd«      } t        j                  d¬«      5  | j	                  dd¬«      }d d d «       | j	                  dd¬«      }j                  |«      sJ ‚y # 1 sw Y   Œ0xY w)Nr   zUse 'quad_segs' insteadr   r    )Ú
resolutionr!   )r   r   r   Údeprecated_callr   rf   rg   s      r   Útest_deprecated_resolutionro   ¨   sl   € Ü�N‰N˜1˜aÓ €EÜ	×	Ñ	Ð&?Ô	@ñ /Ø—‘˜a¨A�Ó.ˆ÷/à�|‰|˜A¨ˆ|Ó+€HØ�=‰=˜Ô"Ð"Ñ"÷/ð /ús   ­A0Á0A9)Úunittestr   Úshapelyr   Úshapely.constructiver   r   Úshapely.geometry.baser   r   ÚmarkÚparametrizeÚfloatr   ÚTestCaser   rk   ro   ra   r   r   ú<module>rx      sf   ðÛ ã å ß @ß 7ð ‡�×Ñ˜¡e¨E£l±E¸%³LÐ%AÓBñó CðôL4�(×#Ñ#ô L4ò^#ó#r   