
    g                     .    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	 d fd	Z xZS )Camerazlayout.scenezlayout.scene.camera>   upeyecenter
projectionc                     | d   S )a  
        Sets the (x,y,z) components of the 'center' camera vector This
        vector determines the translation (x,y,z) space about the
        center of this scene. By default, there is no such translation.

        The 'center' property is an instance of Center
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.scene.camera.Center`
          - A dict of string/value properties that will be passed
            to the Center constructor

            Supported dict properties:

                x

                y

                z

        Returns
        -------
        plotly.graph_objs.layout.scene.camera.Center
        r    selfs    c/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/plotly/graph_objs/layout/scene/_camera.pyr   zCamera.center   s    2 H~    c                     || d<   y )Nr   r   r   vals     r   r   zCamera.center*   s    Xr   c                     | d   S )aZ  
        Sets the (x,y,z) components of the 'eye' camera vector. This
        vector determines the view point about the origin of this
        scene.

        The 'eye' property is an instance of Eye
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.scene.camera.Eye`
          - A dict of string/value properties that will be passed
            to the Eye constructor

            Supported dict properties:

                x

                y

                z

        Returns
        -------
        plotly.graph_objs.layout.scene.camera.Eye
        r   r   r   s    r   r   z
Camera.eye0   s    2 E{r   c                     || d<   y )Nr   r   r   s     r   r   z
Camera.eyeK   s    Ur   c                     | d   S )a|  
        The 'projection' property is an instance of Projection
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.scene.camera.Projection`
          - A dict of string/value properties that will be passed
            to the Projection constructor

            Supported dict properties:

                type
                    Sets the projection type. The projection type
                    could be either "perspective" or
                    "orthographic". The default is "perspective".

        Returns
        -------
        plotly.graph_objs.layout.scene.camera.Projection
        r	   r   r   s    r   r	   zCamera.projectionQ   s    ( L!!r   c                     || d<   y )Nr	   r   r   s     r   r	   zCamera.projectiong   s     \r   c                     | d   S )a  
        Sets the (x,y,z) components of the 'up' camera vector. This
        vector determines the up direction of this scene with respect
        to the page. The default is *{x: 0, y: 0, z: 1}* which means
        that the z axis points up.

        The 'up' property is an instance of Up
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.scene.camera.Up`
          - A dict of string/value properties that will be passed
            to the Up constructor

            Supported dict properties:

                x

                y

                z

        Returns
        -------
        plotly.graph_objs.layout.scene.camera.Up
        r   r   r   s    r   r   z	Camera.upm   s    4 Dzr   c                     || d<   y )Nr   r   r   s     r   r   z	Camera.up   s    T
r   c                      y)NaP          center
            Sets the (x,y,z) components of the 'center' camera
            vector This vector determines the translation (x,y,z)
            space about the center of this scene. By default, there
            is no such translation.
        eye
            Sets the (x,y,z) components of the 'eye' camera vector.
            This vector determines the view point about the origin
            of this scene.
        projection
            :class:`plotly.graph_objects.layout.scene.camera.Projec
            tion` instance or dict with compatible properties
        up
            Sets the (x,y,z) components of the 'up' camera vector.
            This vector determines the up direction of this scene
            with respect to the page. The default is *{x: 0, y: 0,
            z: 1}* which means that the z axis points up.
        r   r   s    r   _prop_descriptionszCamera._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i t        |fi | d| _        y)as  
        Construct a new Camera object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.layout.scene.Camera`
        center
            Sets the (x,y,z) components of the 'center' camera
            vector This vector determines the translation (x,y,z)
            space about the center of this scene. By default, there
            is no such translation.
        eye
            Sets the (x,y,z) components of the 'eye' camera vector.
            This vector determines the view point about the origin
            of this scene.
        projection
            :class:`plotly.graph_objects.layout.scene.camera.Projec
            tion` instance or dict with compatible properties
        up
            Sets the (x,y,z) components of the 'up' camera vector.
            This vector determines the up direction of this scene
            with respect to the page. The default is *{x: 0, y: 0,
            z: 1}* which means that the z axis points up.

        Returns
        -------
        Camera
        camera_parentNzThe first argument to the plotly.graph_objs.layout.scene.Camera
constructor must be a dict or
an instance of :class:`plotly.graph_objs.layout.scene.Camera`skip_invalidF	_validateTr   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   kwargs_vr#   s	           r   r!   zCamera.__init__   sw   D 	fd$X.!),DL ;CT^^,$$&CT"**S/CA  $ZZ>K6 WWXt$)Vr>DNWWUD!OS>DKWW\4(%1Zr>!#DWWT4 >Rr>DJ 	3tC2623 #r   )NNNNN)__name__
__module____qualname___parent_path_str	_path_str_valid_propspropertyr   setterr   r	   r   r   r!   __classcell__)r#   s   @r   r   r      s     &%I8L  4 ]] 
  4 	ZZ 
 " "* ! !
  6 YY 
  , DHV# V#r   r   )plotly.basedatatypesr   _BaseLayoutHierarchyTyper'   r&   r   r   r   r   <module>r:      s    T v#% v#r   