===== Light ===== .. py:class:: Light .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. CylinderAreaLight ----------------- .. py:class:: CylinderAreaLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_type :property: The light attenuation type. .. note:: When :py:obj:`boundedAttenuation` is :py:obj:`True`, the attenuation type affects how the light is attenuated between :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: LightAttenuation :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: bounded_attenuation :property: Whether the light attenuation is bounded by :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_full_effect :property: The distance (in meters) from light for which surfaces are illuminated without attenuation. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFullEffect` > :py:obj:`attenuationFalloff` or if trying to set a negative distance. .. py:method:: attenuation_falloff :property: The distance (in meters) from light for which surfaces are not illuminated anymore. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFalloff` < :py:obj:`attenuationFullEffect` or if trying to set a negative distance. .. py:method:: diameter :property: The diameter (in meters) of the cylinder. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative size. .. py:method:: length :property: The length (in meters) of the cylinder. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative size. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. MeshAreaLight ------------- .. py:class:: MeshAreaLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_type :property: The light attenuation type. .. note:: When :py:obj:`boundedAttenuation` is :py:obj:`True`, the attenuation type affects how the light is attenuated between :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: LightAttenuation :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: bounded_attenuation :property: Whether the light attenuation is bounded by :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_full_effect :property: The distance (in meters) from light for which surfaces are illuminated without attenuation. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFullEffect` > :py:obj:`attenuationFalloff` or if trying to set a negative distance. .. py:method:: attenuation_falloff :property: The distance (in meters) from light for which surfaces are not illuminated anymore. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFalloff` < :py:obj:`attenuationFullEffect` or if trying to set a negative distance. .. py:method:: surface :property: The surface to use as area light or :py:obj:`None` if no surface is set. :type: Surface or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. OmniLight --------- .. py:class:: OmniLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: diameter :property: The diameter of the light (in meters). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative diameter. .. py:method:: attenuation_type :property: The light attenuation type. .. note:: When :py:obj:`boundedAttenuation` is :py:obj:`True`, the attenuation type affects how the light is attenuated between :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: LightAttenuation :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: bounded_attenuation :property: Whether the light attenuation is bounded by :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_full_effect :property: The distance (in meters) from light for which surfaces are illuminated without attenuation. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFullEffect` > :py:obj:`attenuationFalloff` or if trying to set a negative distance. .. py:method:: attenuation_falloff :property: The distance (in meters) from light for which surfaces are not illuminated anymore. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFalloff` < :py:obj:`attenuationFullEffect` or if trying to set a negative distance. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. PlaneAreaLight -------------- .. py:class:: PlaneAreaLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_type :property: The light attenuation type. .. note:: When :py:obj:`boundedAttenuation` is :py:obj:`True`, the attenuation type affects how the light is attenuated between :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: LightAttenuation :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: bounded_attenuation :property: Whether the light attenuation is bounded by :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_full_effect :property: The distance (in meters) from light for which surfaces are illuminated without attenuation. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFullEffect` > :py:obj:`attenuationFalloff` or if trying to set a negative distance. .. py:method:: attenuation_falloff :property: The distance (in meters) from light for which surfaces are not illuminated anymore. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFalloff` < :py:obj:`attenuationFullEffect` or if trying to set a negative distance. .. py:method:: width :property: The width (in meters) of the plane. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative size. .. py:method:: height :property: The height (in meters) of the plane. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative size. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. SkyLight -------- .. py:class:: SkyLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: top_angle :property: The sky top angle (in degrees in [-90, 90] range). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`topAngle` <= :py:obj:`bottomAngle` or if not in [-90, 90] range. .. py:method:: bottom_angle :property: The sky bottom angle (in degrees in [-90, 90] range). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`bottomAngle` >= :py:obj:`topAngle` or if not in [-90, 90] range. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. SpotLight --------- .. py:class:: SpotLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: diameter :property: The diameter of the light (in meters). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative diameter. .. py:method:: target :property: The target position of the spot in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: falloff :property: The falloff of the spot (in degrees in [0, 175] range). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If ``falloff`` < :py:obj:`hotSpot` or if not in [0, 175] range. .. py:method:: hot_spot :property: The hot spot (aperture) of the spot (in degrees in [0, 175] range). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`hotSpot` > ``falloff`` or if not in [0, 175] range. .. py:method:: attenuation_type :property: The light attenuation type. .. note:: When :py:obj:`boundedAttenuation` is :py:obj:`True`, the attenuation type affects how the light is attenuated between :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: LightAttenuation :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: bounded_attenuation :property: Whether the light attenuation is bounded by :py:obj:`attenuationFullEffect` and :py:obj:`attenuationFalloff`. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: attenuation_full_effect :property: The distance (in meters) from light for which surfaces are illuminated without attenuation. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFullEffect` > :py:obj:`attenuationFalloff` or if trying to set a negative distance. .. py:method:: attenuation_falloff :property: The distance (in meters) from light for which surfaces are not illuminated anymore. It is only effective if :py:obj:`boundedAttenuation` is :py:obj:`True`. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If :py:obj:`attenuationFalloff` < :py:obj:`attenuationFullEffect` or if trying to set a negative distance. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. SunLight -------- .. py:class:: SunLight Base class: :py:class:`Light` .. py:method:: id :property: The id of the light. :type: str, read-only .. py:method:: name :property: The name of the light. :type: str :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: layer :property: The parent lighting layer of this light. :type: LightingLayer, read-only .. py:method:: group :property: The group of this light or :py:obj:`None` if the light is at the root of the hierarchy. :type: LightGroup or None :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: enabled :property: The light enabled state. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: position :property: The light position in world. :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: rotation :property: The light rotation in world (in degrees). :type: Vector3 :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: color :property: The color of the light. :type: ColorRgb :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: intensity :property: The light intensity. :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: cast_shadow :property: Whether the light casts shadows. :type: bool :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: shadow_intensity :property: The shadow intensity (the intensity of the light when in shadows). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative intensity. .. py:method:: shadow_integrity :property: The shadow integrity. :type: ShadowIntegrity :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. .. py:method:: diameter :property: The diameter of the light (in meters). :type: float :raises ReadOnlyError: If :py:obj:`Database` is in read only mode. :raises ValueError: If trying to set a negative diameter. .. py:method:: remove() Delete this light. :raises ReadOnlyError: If :py:obj:`Database` is in read only mode.