ó
    gzi{  ã                   ó~   • S r SSKrSSKrSSKJr  SSKJr  S/r " S S\5      r	\	\R                  R                  S'   g)zPoints and related utilities.é    N)ÚDimensionError)ÚBaseGeometryÚPointc                   óŒ   • \ rS rSrSr/ rS r\S 5       r\S 5       r	\S 5       r
\S 5       r\S 5       rSS
 jr\S 5       rSrg	)r   é   aA  A geometry type that represents a single coordinate.

Each coordinate has x, y and possibly z and/or m values.

A point is a zero-dimensional feature and has zero length and zero area.

Parameters
----------
args : float, or sequence of floats
    The coordinates can either be passed as a single parameter, or as
    individual float values using multiple parameters:

    1) 1 parameter: a sequence or array-like of with 2 or 3 values.
    2) 2 or 3 parameters (float): x, y, and possibly z.

Attributes
----------
x, y, z, m : float
    Coordinate values

Examples
--------
Constructing the Point using separate parameters for x and y:

>>> from shapely import Point
>>> p = Point(1.0, -1.0)

Constructing the Point using a list of x, y coordinates:

>>> p = Point([1.0, -1.0])
>>> print(p)
POINT (1 -1)
>>> p.y
-1.0
>>> p.x
1.0

c                 ó  • [        U5      S:X  a  [        R                  " S5      $ [        U5      S:”  a  [        S[        U5       S35      e[        U5      S:X  a]  US   n[	        U[
        5      (       a  U$ [        US5      (       d  [        U5      n[        R                  " U5      R                  5       nO$[        R                  " U5      R                  5       nUR                  S:”  a  [        SU 35      e[        R                  " UR                  [        R                   5      (       d  U Vs/ s H  n[#        U5      PM     nn[        R$                  " U5      n[	        U[
        5      (       d  [        S	5      eU$ s  snf )
zCreate a new Point geometry.r   zPOINT EMPTYé   z#Point() takes at most 3 arguments (z given)é   Ú__getitem__z:Point() takes only scalar or 1-size vector arguments, got z*Invalid values passed to Point constructor)ÚlenÚshapelyÚfrom_wktÚ	TypeErrorÚ
isinstancer   ÚhasattrÚlistÚnpÚasarrayÚsqueezeÚarrayÚndimÚ
ValueErrorÚ
issubdtypeÚdtypeÚnumberÚfloatÚpoints)ÚselfÚargsÚcoordsÚcÚgeoms        ÚS/home/mande/repo/quber/.venv/lib/python3.13/site-packages/shapely/geometry/point.pyÚ__new__ÚPoint.__new__6   s7  € äˆt‹9˜‹>ô ×#Ò# MÓ2Ð2Ü�‹Y˜‹]ÜÐAÄ#ÀdÃ)ÀÈGÐTÓUÐUÜ�‹Y˜!‹^Ø˜!‘WˆFÜ˜&¤%×(Ñ(Ø�ô ˜6 =×1Ñ1Ü˜f›�Ü—Z’Z Ó'×/Ñ/Ó1‰Fô —X’X˜d“^×+Ñ+Ó-ˆFà�;‰;˜‹?ÜØLÈTÈFÐSóð ô �}Š}˜VŸ\™\¬2¯9©9×5Ñ5Ù(.Ó/ª 1”e˜A–h©ˆFÐ/Ü�~Š~˜fÓ%ˆÜ˜$¤×&Ñ&ÜÐIÓJÐJØˆùò	 0s   Ä3Fc                 ó@   • [        [        R                  " U 5      5      $ )zReturn x coordinate.)r   r   Úget_x©r   s    r#   ÚxÚPoint.xX   ó   € ô ”W—]’] 4Ó(Ó)Ð)ó    c                 ó@   • [        [        R                  " U 5      5      $ )zReturn y coordinate.)r   r   Úget_yr(   s    r#   ÚyÚPoint.y]   r+   r,   c                 óÆ   • [         R                  " U 5      n[        R                  " U5      (       a&  [         R                  " U 5      (       d  [        S5      e[        U5      $ )zReturn z coordinate.zThis point has no z coordinate.)r   Úget_zr   ÚisnanÚhas_zr   r   )r   Úzs     r#   r5   ÚPoint.zb   sB   € ô �MŠM˜$ÓˆÜ�8Š8�A�;‰;œwŸ}š}¨T×2Ñ2Ü Ð!BÓCÐCÜ�Q‹xˆr,   c                 óŒ   • [         R                  " U 5      (       d  [        S5      e[        [         R                  " U 5      5      $ )zUReturn m coordinate.

.. versionadded:: 2.1.0
   Also requires GEOS 3.12.0 or later.
zThis point has no m coordinate.)r   Úhas_mr   r   Úget_mr(   s    r#   ÚmÚPoint.mj   s3   € ô �}Š}˜T×"Ñ"Ü Ð!BÓCÐCÜ”W—]’] 4Ó(Ó)Ð)r,   c                 óP   • U R                   nS[        U5      S:”  a  US   S.$ SS.$ )z4Return a GeoJSON-like mapping of the Point geometry.r   r   © )ÚtypeÚcoordinates)r    r   )r   r    s     r#   Ú__geo_interface__ÚPoint.__geo_interface__u   s/   € ð —‘ˆØ¼SÀ»[È1»_°°q±	ÑUÐUÐRTÑUÐUr,   Nc                 ó¾   • U R                   (       a  gUc  U R                  (       a  SOSnUc  SnSU R                   SU R                   SSU-   S	S
U-   SU SU S3$ )aˆ  Return SVG circle element for the Point geometry.

Parameters
----------
scale_factor : float
    Multiplication factor for the SVG circle diameter.  Default is 1.
fill_color : str, optional
    Hex string for fill color. Default is to use "#66cc99" if
    geometry is valid, and "#ff3333" if invalid.
opacity : float
    Float number between 0 and 1 for color opacity. Default value is 0.6

z<g />z#66cc99z#ff3333g333333ã?z<circle cx="z" cy="z" r="g      @z!" stroke="#555555" stroke-width="ç      ð?z" fill="z" opacity="z" />)Úis_emptyÚis_validr)   r/   )r   Úscale_factorÚ
fill_colorÚopacitys       r#   ÚsvgÚ	Point.svg{   sz   € ð �=�=ØØÑØ&*§m§m™¸ˆJØ‰?ØˆGà˜4Ÿ6™6˜( &¨¯©¨°°c¸LÑ6HÐ5Ið J.Ø.1°LÑ.@Ð-AÀÈ*Èð VØ�y ð&ð	
r,   c                 ó.   • U R                   R                  $ )zžSeparate arrays of X and Y coordinate values.

Examples
--------
>>> from shapely import Point
>>> x, y = Point(0, 0).xy
>>> list(x)
[0.0]
>>> list(y)
[0.0]

)r    Úxyr(   s    r#   rL   ÚPoint.xy•   s   € ð �{‰{�~‰~Ðr,   r=   )rC   NN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú	__slots__r$   Úpropertyr)   r/   r5   r:   r@   rI   rL   Ú__static_attributes__r=   r,   r#   r   r      s”   † ñ%ðN €IòðD ñ*ó ð*ð ñ*ó ð*ð ñó ðð ñ*ó ð*ð ñVó ðVô

ð4 ñó ór,   )rR   Únumpyr   r   Úshapely.errorsr   Úshapely.geometry.baser   Ú__all__r   ÚlibÚregistryr=   r,   r#   Ú<module>r\      s@   ðÙ #ã ã Ý )Ý .àˆ)€ôWˆLô Wðt  €‡�× Ñ �QÒ r,   