
    _ h
                     >    d Z ddlZddlZddlZddlmZ d Zd Zd Z	y)zBProvides multi-point element-wise operations such as ``contains``.    N)PreparedGeometryc                    t        j                  |       t        j                  |      }} | j                  |j                  k7  rt        d      | j                  t         j
                  k7  r| j                  t         j
                        } |j                  t         j
                  k7  r|j                  t         j
                        }t        j                  | |      S )Nz"X and Y shapes must be equivalent.)	np
asanyarrayshape
ValueErrordtypefloat64astypeshapelypoints)xys     w/home/developers/rajanand/mypropertyqr-fmb-refixing-v2/venv/lib/python3.12/site-packages/shapely/vectorized/__init__.py_construct_pointsr      s    ==R]]1-qAww!''=>>ww"**HHRZZ ww"**HHRZZ >>!Q    c                     t        j                  dt        d       t        | t              r| j
                  } t        j                  |        t        j                  | ||      S )ad  Check whether multiple points are contained by a single geometry.

    Vectorized (element-wise) version of `contains`.

    Parameters
    ----------
    geometry : PreparedGeometry or subclass of BaseGeometry
        The geometry which is to be checked to see whether each point is
        contained within. The geometry will be "prepared" if it is not already
        a PreparedGeometry instance.
    x : array
        The x coordinates of the points to check.
    y : array
        The y coordinates of the points to check.

    Returns
    -------
    Mask of points contained by the given `geometry`.

    zThe 'shapely.vectorized.contains' function is deprecated and will be removed a future version. Use 'shapely.contains_xy' instead (available since shapely 2.0.0).   
stacklevel)	warningswarnDeprecationWarning
isinstancer   contextr   preparecontains_xy)geometryr   r   s      r   containsr      sV    * MM	  	 (,-##OOHxA..r   c                     t        j                  dt        d       t        | t              r| j
                  } | j                  }t        j                  |       t        j                  |||      S )aw  Check whether multiple points touch the exterior of a single geometry.

    Vectorized (element-wise) version of `touches`.

    Parameters
    ----------
    geometry : PreparedGeometry or subclass of BaseGeometry
        The geometry which is to be checked to see whether each point is
        contained within. The geometry will be "prepared" if it is not already
        a PreparedGeometry instance.
    x : array
        The x coordinates of the points to check.
    y : array
        The y coordinates of the points to check.

    Returns
    -------
    Mask of points which touch the exterior of the given `geometry`.

    zThe 'shapely.vectorized.touches' function is deprecated and will be removed a future version. Use 'shapely.intersects_xy(geometry.boundary, x, y)' instead (available since shapely 2.0.0).r   r   )
r   r   r   r   r   r   boundaryr   r   intersects_xy)r   r   r   r!   s       r   touchesr#   :   sa    * MM	4 	 (,-##  HOOH  1a00r   )
__doc__r   numpyr   r   shapely.preparedr   r   r   r#    r   r   <module>r(      s$    H    -
 /D!1r   