
    [6g                     6    d dl mZ d dlZ G d de          ZdS )    )BaseTraceHierarchyTypeNc                   `    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	 	 	 	 	 	 d fd	Z xZS )Lightingsurfacezsurface.lighting>   ambientdiffusefresnelspecular	roughnessc                     | d         S )a  
        Ambient light increases overall color visibility but can wash
        out the image.

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

        Returns
        -------
        int|float
        r    selfs    b/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/plotly/graph_objs/surface/_lighting.pyr   zLighting.ambient        I    c                     || d<   d S )Nr   r   r   vals     r   r   zLighting.ambient       Yr   c                     | d         S )a  
        Represents the extent that incident rays are reflected in a
        range of angles.

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

        Returns
        -------
        int|float
        r   r   r   s    r   r   zLighting.diffuse$   r   r   c                     || d<   d S )Nr   r   r   s     r   r   zLighting.diffuse3   r   r   c                     | d         S )au  
        Represents the reflectance as a dependency of the viewing
        angle; e.g. paper is reflective when viewing it from the edge
        of the paper (almost 90 degrees), causing shine.

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

        Returns
        -------
        int|float
        r	   r   r   s    r   r	   zLighting.fresnel9   s     Ir   c                     || d<   d S )Nr	   r   r   s     r   r	   zLighting.fresnelI   r   r   c                     | d         S )a#  
        Alters specular reflection; the rougher the surface, the wider
        and less contrasty the shine.

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

        Returns
        -------
        int|float
        r   r   r   s    r   r   zLighting.roughnessO   s     K  r   c                     || d<   d S )Nr   r   r   s     r   r   zLighting.roughness^   s    [r   c                     | d         S )a!  
        Represents the level that incident rays are reflected in a
        single direction, causing shine.

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

        Returns
        -------
        int|float
        r
   r   r   s    r   r
   zLighting.speculard   s     Jr   c                     || d<   d S )Nr
   r   r   s     r   r
   zLighting.speculars   s    Zr   c                     dS )Na          ambient
            Ambient light increases overall color visibility but
            can wash out the image.
        diffuse
            Represents the extent that incident rays are reflected
            in a range of angles.
        fresnel
            Represents the reflectance as a dependency of the
            viewing angle; e.g. paper is reflective when viewing it
            from the edge of the paper (almost 90 degrees), causing
            shine.
        roughness
            Alters specular reflection; the rougher the surface,
            the wider and less contrasty the shine.
        specular
            Represents the level that incident rays are reflected
            in a single direction, causing shine.
        r   r   s    r   _prop_descriptionszLighting._prop_descriptionsy   s     r   Nc           	      V   t          t          |                               d           d|v r|d         | _        dS |i }nct	          || j                  r|                                }n9t	          |t                    rt          j	        |          }nt          d          |                    dd          | _        |                    dd          | _        |                    d	d          }||n|}||| d	<   |                    d
d          }||n|}||| d
<   |                    dd          }||n|}||| d<   |                    dd          }||n|}||| d<   |                    dd          }||n|}||| d<    | j        di t          |fi | d| _        dS )a  
        Construct a new Lighting object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.surface.Lighting`
        ambient
            Ambient light increases overall color visibility but
            can wash out the image.
        diffuse
            Represents the extent that incident rays are reflected
            in a range of angles.
        fresnel
            Represents the reflectance as a dependency of the
            viewing angle; e.g. paper is reflective when viewing it
            from the edge of the paper (almost 90 degrees), causing
            shine.
        roughness
            Alters specular reflection; the rougher the surface,
            the wider and less contrasty the shine.
        specular
            Represents the level that incident rays are reflected
            in a single direction, causing shine.

        Returns
        -------
        Lighting
        lighting_parentNzThe first argument to the plotly.graph_objs.surface.Lighting
constructor must be a dict or
an instance of :class:`plotly.graph_objs.surface.Lighting`skip_invalidF	_validateTr   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
   kwargs_vr)   s
            r   r'   zLighting.__init__   s   R 	h&&z222!),DLF ;CCT^,, 
	$$&&CCT"" 	*S//CC>   $ZZ>>K66 WWY%%+WW> DOWWY%%+WW> DOWWY%%+WW> DOWW[$''#/YYR> "DWWZ&&!-XX2>!D 	33tC22622333 #r   )NNNNNN)__name__
__module____qualname___parent_path_str	_path_str_valid_propspropertyr   setterr   r	   r   r
   r    r'   __classcell__)r)   s   @r   r   r      s        !"IMMML   X ^  ^
   X ^  ^
   X ^  ^
 ! ! X!      
     X  _  _
   X. a# a# a# a# a# a# a# a# a# a#r   r   )plotly.basedatatypesr   _BaseTraceHierarchyTyper-   r,   r   r   r   r   <module>r@      sb    R R R R R R    k# k# k# k# k#& k# k# k# k# k#r   