o
    
h)                     @   s,   d dl mZ d dlmZ G dd deZdS )   )GEOSBase)preparedc                   @   sl   e Zd ZdZejZejZdd Z	dd Z
dd Zdd	 Zd
d Zdd Zdd Zdd Zdd Zdd ZdS )PreparedGeometryz
    A geometry that is prepared for performing certain operations.
    At the moment this includes the contains covers, and intersects
    operations.
    c                 C   s2   || _ ddlm} t||stt|j| _d S )Nr   )GEOSGeometry)
_base_geomgeometryr   
isinstance	TypeErrorcapigeos_prepareptr)selfgeomr    r   b/var/www/html/optinet_system/venv/lib/python3.10/site-packages/django/contrib/gis/geos/prepared.py__init__   s
   
zPreparedGeometry.__init__c                 C      t | j|jS N)r
   prepared_containsr   r   otherr   r   r   contains      zPreparedGeometry.containsc                 C   r   r   )r
   prepared_contains_properlyr   r   r   r   r   contains_properly   r   z"PreparedGeometry.contains_properlyc                 C   r   r   )r
   prepared_coversr   r   r   r   r   covers    r   zPreparedGeometry.coversc                 C   r   r   )r
   prepared_intersectsr   r   r   r   r   
intersects#   r   zPreparedGeometry.intersectsc                 C   r   r   )r
   prepared_crossesr   r   r   r   r   crosses&   r   zPreparedGeometry.crossesc                 C   r   r   )r
   prepared_disjointr   r   r   r   r   disjoint)   r   zPreparedGeometry.disjointc                 C   r   r   )r
   prepared_overlapsr   r   r   r   r   overlaps,   r   zPreparedGeometry.overlapsc                 C   r   r   )r
   prepared_touchesr   r   r   r   r   touches/   r   zPreparedGeometry.touchesc                 C   r   r   )r
   prepared_withinr   r   r   r   r   within2   r   zPreparedGeometry.withinN)__name__
__module____qualname____doc__r
   PREPGEOM_PTRptr_typeprepared_destroy
destructorr   r   r   r   r   r    r"   r$   r&   r(   r   r   r   r   r      s    r   N)baser   
prototypesr   r
   r   r   r   r   r   <module>   s    