
    Dh                     X    S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	   " S S\\5      r
g)	    )
JSCSSMixin)Marker)Template)remove_empty)path_optionsc                   R   ^  \ rS rSrSr\" S5      rS/r      SU 4S jjrSr	U =r
$ )
SemiCircle   ac  Add a marker in the shape of a semicircle, similar to the Circle class.

Use (direction and arc) or (start_angle and stop_angle), not both.

Parameters
----------
location: tuple[float, float]
    Latitude and Longitude pair (Northing, Easting)
radius: float
    Radius of the circle, in meters.
direction: int, default None
    Direction angle in degrees
arc: int, default None
    Arc angle in degrees.
start_angle: int, default None
    Start angle in degrees
stop_angle: int, default None
    Stop angle in degrees.
popup: str or folium.Popup, optional
    Input text or visualization for object displayed when clicking.
tooltip: str or folium.Tooltip, optional
    Display a text when hovering over the object.
**kwargs
    For additional arguments see :func:`folium.vector_layers.path_options`

Uses Leaflet plugin https://github.com/jieter/Leaflet-semicircle

a  
        {% macro script(this, kwargs) %}
            var {{ this.get_name() }} = L.semiCircle(
                {{ this.location|tojson }},
                {{ this.options|tojavascript }}
                )
                {%- if this.direction %}
                    .setDirection({{ this.direction[0] }}, {{ this.direction[1] }})
                {%- endif %}
                .addTo({{ this._parent.get_name() }});
        {% endmacro %}
        )semicirclejszGhttps://cdn.jsdelivr.net/npm/leaflet-semicircle@2.0.4/Semicircle.min.jsc	                 8  > [         T
U ]  XUS9  SU l        Ub  Ub  X44OS U l        [	        SSUS.U	D6U l        U R
                  R                  [        UUS95        [        S0 U R
                  D6U l        Uc	  Uc  Ub  Uc  Ub	  Ub  Uc  Ub  [        S5      eg g )N)popuptooltipr	   F)lineradius)start_angle
stop_anglezQInvalid arguments. Either provide direction and arc OR start_angle and stop_angle )
super__init___name	directionr   optionsupdatedictr   
ValueError)selflocationr   r   arcr   r   r   r   kwargs	__class__s             lC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\folium/plugins/semicircle.pyr   SemiCircle.__init__<   s     	@!
 ) 5#/Yt 	 $HvHH'%	
 $3dll3 3;(Z-C%#/$);c  *< .D    )r   r   r   )NNNNNN)__name__
__module____qualname____firstlineno____doc__r   	_template
default_jsr   __static_attributes____classcell__)r    s   @r!   r	   r	      sC    : 	I 	
J " "r#   r	   N)folium.elementsr   
folium.mapr   folium.templater   folium.utilitiesr   folium.vector_layersr   r	   r   r#   r!   <module>r2      s$    &  $ ) -VV Vr#   