
    gC'                     .    d dl mZ d dlZ G d de      Zy)    )BaseLayoutHierarchyTypeNc                       e Zd ZdZdZh dZed        Zej                  d        Zed        Z	e	j                  d        Z	ed        Z
e
j                  d	        Z
ed
        Zej                  d        Zed        Zej                  d        Zed        Zej                  d        Zed        Z	 	 	 	 	 	 	 d fd	Z xZS )
Projectionz
layout.geozlayout.geo.projection>   tilttypescaledistancerotation	parallelsc                     | d   S )uf  
        For satellite projection type only. Sets the distance from the
        center of the sphere to the point of view as a proportion of
        the sphere’s radius.

        The 'distance' property is a number and may be specified as:
          - An int or float in the interval [1.001, inf]

        Returns
        -------
        int|float
        r	    selfs    e/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/plotly/graph_objs/layout/geo/_projection.pyr	   zProjection.distance   s     J    c                     || d<   y )Nr	   r   r   vals     r   r	   zProjection.distance       Zr   c                     | d   S )a&  
            For conic projection types only. Sets the parallels (tangent,
            secant) where the cone intersects the sphere.

            The 'parallels' property is an info array that may be specified as:

            * a list or tuple of 2 elements where:
        (0) The 'parallels[0]' property is a number and may be specified as:
              - An int or float
        (1) The 'parallels[1]' property is a number and may be specified as:
              - An int or float

            Returns
            -------
            list
        r   r   r   s    r   r   zProjection.parallels%   s    $ K  r   c                     || d<   y )Nr   r   r   s     r   r   zProjection.parallels9   s    [r   c                     | d   S )ae  
        The 'rotation' property is an instance of Rotation
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.geo.projection.Rotation`
          - A dict of string/value properties that will be passed
            to the Rotation constructor

            Supported dict properties:

                lat
                    Rotates the map along meridians (in degrees
                    North).
                lon
                    Rotates the map along parallels (in degrees
                    East). Defaults to the center of the
                    `lonaxis.range` values.
                roll
                    Roll the map (in degrees) For example, a roll
                    of 180 makes the map appear upside down.

        Returns
        -------
        plotly.graph_objs.layout.geo.projection.Rotation
        r
   r   r   s    r   r
   zProjection.rotation?   s    4 Jr   c                     || d<   y )Nr
   r   r   s     r   r
   zProjection.rotation[   r   r   c                     | d   S )a@  
        Zooms in or out on the map view. A scale of 1 corresponds to
        the largest zoom level that fits the map's lon and lat ranges.

        The 'scale' property is a number and may be specified as:
          - An int or float in the interval [0, inf]

        Returns
        -------
        int|float
        r   r   r   s    r   r   zProjection.scalea   s     G}r   c                     || d<   y )Nr   r   r   s     r   r   zProjection.scalep   s    Wr   c                     | d   S )z
        For satellite projection type only. Sets the tilt angle of
        perspective projection.

        The 'tilt' property is a number and may be specified as:
          - An int or float

        Returns
        -------
        int|float
        r   r   r   s    r   r   zProjection.tiltv   s     F|r   c                     || d<   y )Nr   r   r   s     r   r   zProjection.tilt       Vr   c                     | d   S )a=  
        Sets the projection type.

        The 'type' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['airy', 'aitoff', 'albers', 'albers usa', 'august',
                'azimuthal equal area', 'azimuthal equidistant', 'baker',
                'bertin1953', 'boggs', 'bonne', 'bottomley', 'bromley',
                'collignon', 'conic conformal', 'conic equal area', 'conic
                equidistant', 'craig', 'craster', 'cylindrical equal
                area', 'cylindrical stereographic', 'eckert1', 'eckert2',
                'eckert3', 'eckert4', 'eckert5', 'eckert6', 'eisenlohr',
                'equal earth', 'equirectangular', 'fahey', 'foucaut',
                'foucaut sinusoidal', 'ginzburg4', 'ginzburg5',
                'ginzburg6', 'ginzburg8', 'ginzburg9', 'gnomonic',
                'gringorten', 'gringorten quincuncial', 'guyou', 'hammer',
                'hill', 'homolosine', 'hufnagel', 'hyperelliptical',
                'kavrayskiy7', 'lagrange', 'larrivee', 'laskowski',
                'loximuthal', 'mercator', 'miller', 'mollweide', 'mt flat
                polar parabolic', 'mt flat polar quartic', 'mt flat polar
                sinusoidal', 'natural earth', 'natural earth1', 'natural
                earth2', 'nell hammer', 'nicolosi', 'orthographic',
                'patterson', 'peirce quincuncial', 'polyconic',
                'rectangular polyconic', 'robinson', 'satellite', 'sinu
                mollweide', 'sinusoidal', 'stereographic', 'times',
                'transverse mercator', 'van der grinten', 'van der
                grinten2', 'van der grinten3', 'van der grinten4',
                'wagner4', 'wagner6', 'wiechel', 'winkel tripel',
                'winkel3']

        Returns
        -------
        Any
        r   r   r   s    r   r   zProjection.type   s    H F|r   c                     || d<   y )Nr   r   r   s     r   r   zProjection.type   r   r   c                      y)NuR          distance
            For satellite projection type only. Sets the distance
            from the center of the sphere to the point of view as a
            proportion of the sphere’s radius.
        parallels
            For conic projection types only. Sets the parallels
            (tangent, secant) where the cone intersects the sphere.
        rotation
            :class:`plotly.graph_objects.layout.geo.projection.Rota
            tion` instance or dict with compatible properties
        scale
            Zooms in or out on the map view. A scale of 1
            corresponds to the largest zoom level that fits the
            map's lon and lat ranges.
        tilt
            For satellite projection type only. Sets the tilt angle
            of perspective projection.
        type
            Sets the projection type.
        r   r   s    r   _prop_descriptionszProjection._prop_descriptions   s    r   c           	         t         t        |   d       d|v r|d   | _        y|i }nXt	        || j
                        r|j                         }n1t	        |t              rt        j                  |      }nt        d      |j                  dd      | _        |j                  dd      | _        |j                  d	d      }	||n|	}	|	|	| d	<   |j                  d
d      }	||n|	}	|	|	| d
<   |j                  dd      }	||n|	}	|	|	| d<   |j                  dd      }	||n|	}	|	|	| d<   |j                  dd      }	||n|	}	|	|	| d<   |j                  dd      }	||n|	}	|	|	| d<    | j                  di t        |fi | d| _        y)u  
        Construct a new Projection object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.layout.geo.Projection`
        distance
            For satellite projection type only. Sets the distance
            from the center of the sphere to the point of view as a
            proportion of the sphere’s radius.
        parallels
            For conic projection types only. Sets the parallels
            (tangent, secant) where the cone intersects the sphere.
        rotation
            :class:`plotly.graph_objects.layout.geo.projection.Rota
            tion` instance or dict with compatible properties
        scale
            Zooms in or out on the map view. A scale of 1
            corresponds to the largest zoom level that fits the
            map's lon and lat ranges.
        tilt
            For satellite projection type only. Sets the tilt angle
            of perspective projection.
        type
            Sets the projection type.

        Returns
        -------
        Projection
        
projection_parentNzThe first argument to the plotly.graph_objs.layout.geo.Projection
constructor must be a dict or
an instance of :class:`plotly.graph_objs.layout.geo.Projection`skip_invalidF	_validateTr	   r   r
   r   r   r   r   )superr   __init__r%   
isinstance	__class__to_plotly_jsondict_copycopy
ValueErrorpop_skip_invalidr'   _process_kwargs)r   argr	   r   r
   r   r   r   kwargs_vr+   s             r   r)   zProjection.__init__   s   X 	j$(6!),DL ;CT^^,$$&CT"**S/CC  $ZZ>K6 WWZ&!-X2>!DWW[$'#/YR> "DWWZ&!-X2>!DWWWd#'UR>DMWWVT"%T2>DLWWVT"%T2>DL 	3tC2623 #r   )NNNNNNN)__name__
__module____qualname___parent_path_str	_path_str_valid_propspropertyr	   setterr   r
   r   r   r   r"   r)   __classcell__)r+   s   @r   r   r      sW    $'IQL     __ 
 ! !&    
    6 __ 
   \\ 
   
[[ 
 # #J 
[[ 
  2 h# h#r   r   )plotly.basedatatypesr   _BaseLayoutHierarchyTyper/   r.   r   r   r   r   <module>rB      s    T r#) r#r   