Source code for dash_mp_components.PhononAnimationScene

# AUTO GENERATED FILE - DO NOT EDIT

import typing  # noqa: F401
from typing_extensions import TypedDict, NotRequired, Literal # noqa: F401
from dash.development.base_component import Component, _explicitize_args
try:
    from dash.types import NumberType  # noqa: F401
except ImportError:
    # Backwards compatibility for dash<=4.1.0
    if typing.TYPE_CHECKING:
        raise
    NumberType = typing.Union[  # noqa: F401
        typing.SupportsFloat, typing.SupportsInt, typing.SupportsComplex
    ]

ComponentSingleType = typing.Union[str, int, float, Component, None]
ComponentType = typing.Union[
    ComponentSingleType,
    typing.Sequence[ComponentSingleType],
]


[docs] class PhononAnimationScene(Component): """A PhononAnimationScene component. Keyword arguments: - children (optional): First child will be rendered as the settings panel. Second child will be rendered as the bottom panel (legend). - id (optional): The ID used to identify this component in Dash callbacks. - animation (optional): Animation type. - axisView (optional): Where is the axis displayed ( 'NW' / 'NE' / 'SE' / 'SW' / 'HIDDEN' ). - className (optional): Class name that will wrap around the whole scene component. When enlarged, this class name is applied to the modal-content element. - currentCameraState (optional): THIS PROP IS SET AUTOMATICALLY Object that maintains the current state of the camera. e.g. { position: {x: 0, y: 0, z: 0}, quarternion: {x: 0, y: 0, z: 0, w: 0}, zoom: 1, setByComponentId: \"1\", following: True }. - customCameraState (optional): Object for setting the scene to a custom camera state. When modified, the camera will update to new custom state. e.g. { position: {x: 0, y: 0, z: 0}, quarternion: {x: 0, y: 0, z: 0, w: 0}, (optional) zoom: 1 (optional) }. - data (optional): Simple3DScene JSON, the easiest way to generate this is to use the Scene class in crystal_toolkit.core.scene and its to_json method. - debug (optional): Display a debug view. - fileOptions (optional): List of options to show in file download dropdown. - fileTimestamp (optional): THIS PROP IS SET AUTOMATICALLY Date string that represents the time fileType was set. Use this prop in dash callbacks to trigger file downloads. - fileType (optional): THIS PROP IS SET AUTOMATICALLY The last file type clicked in the file download menu. - imageData (optional): THIS PROP IS SET AUTOMATICALLY Data string for the image generated on image button click. - imageDataTimestamp (optional): THIS PROP IS SET AUTOMATICALLY Date string that represents the time imageData was set. Use this prop in dash callbacks to trigger downloads of imageData. - imageRequest (optional): Set to trigger a screenshot or scene download. Must be an object with the following structure: { \"filetype\": \"png\" // the image format (\"png\", \"dae\") } Passing this prop as an object ensures that new requests are triggered any time the prop is set. - imageType (optional): File type to be downloaded as an image. Either png or dae. - inletPadding (optional): Padding of the axis view. - inletSize (optional): Size of the axis view. - sceneSize (optional): Width / Height of the displayed component. - selectedObject (optional): This points to the last clicked objects. Use it in your dash callback to know which objects are currently selected in the scene. - setProps (optional): Dash-assigned callback that should be called whenever any of the properties change. - settings (optional): Options used for generating scene. Supported options and their defaults are given as follows: { antialias: True, // set to False to improve performance renderer: 'webgl', // 'svg' also an option, used for unit testing transparentBackground: False, // transparent background background: '#ffffff', // background color if not transparent, sphereSegments: 32, // decrease to improve performance cylinderSegments: 16, // decrease to improve performance staticScene: True, // disable if animation required defaultZoom: 1, // 1 will zoom to fit object exactly, <1 will add padding between object and box bounds zoomToFit2D: False // if True, will zoom to fit object only along the X and Y axes (not Z) extractAxis: False // will remove the axis from the main scene isMultiSelectionEnabled: False // allow to use shift to select, secondaryObjectView: True // show the selected object in a detail view animation: 'play' | 'slider' | 'none' // choose which style of animation is use } There are several additional options used for debugging and testing, please consult the source code directly for these. - showControls (optional) - showExpandButton (optional) - showExportButton (optional) - showImageButton (optional) - showPositionButton (optional) - toggleVisibility (optional): Hide/show nodes in scene by its name (key), value is 1 to show the node and 0 to hide it.""" _children_props: typing.List[str] = [] _base_nodes = ['children'] _namespace = 'dash_mp_components' _type = 'PhononAnimationScene' def __init__( self, children: typing.Optional[ComponentType] = None, id: typing.Optional[typing.Union[str, dict]] = None, className: typing.Optional[typing.Any] = None, data: typing.Optional[typing.Any] = None, settings: typing.Optional[typing.Any] = None, toggleVisibility: typing.Optional[typing.Any] = None, imageRequest: typing.Optional[typing.Any] = None, imageType: typing.Optional[typing.Any] = None, imageData: typing.Optional[typing.Any] = None, imageDataTimestamp: typing.Optional[typing.Any] = None, fileOptions: typing.Optional[typing.Any] = None, fileType: typing.Optional[typing.Any] = None, fileTimestamp: typing.Optional[typing.Any] = None, selectedObject: typing.Optional[typing.Any] = None, sceneSize: typing.Optional[typing.Any] = None, axisView: typing.Optional[typing.Any] = None, inletSize: typing.Optional[typing.Any] = None, inletPadding: typing.Optional[typing.Any] = None, debug: typing.Optional[typing.Any] = None, animation: typing.Optional[typing.Any] = None, currentCameraState: typing.Optional[typing.Any] = None, customCameraState: typing.Optional[typing.Any] = None, showControls: typing.Optional[typing.Any] = None, showExpandButton: typing.Optional[typing.Any] = None, showImageButton: typing.Optional[typing.Any] = None, showExportButton: typing.Optional[typing.Any] = None, showPositionButton: typing.Optional[typing.Any] = None, **kwargs ): self._prop_names = ['children', 'id', 'animation', 'axisView', 'className', 'currentCameraState', 'customCameraState', 'data', 'debug', 'fileOptions', 'fileTimestamp', 'fileType', 'imageData', 'imageDataTimestamp', 'imageRequest', 'imageType', 'inletPadding', 'inletSize', 'sceneSize', 'selectedObject', 'setProps', 'settings', 'showControls', 'showExpandButton', 'showExportButton', 'showImageButton', 'showPositionButton', 'toggleVisibility'] self._valid_wildcard_attributes = [] self.available_properties = ['children', 'id', 'animation', 'axisView', 'className', 'currentCameraState', 'customCameraState', 'data', 'debug', 'fileOptions', 'fileTimestamp', 'fileType', 'imageData', 'imageDataTimestamp', 'imageRequest', 'imageType', 'inletPadding', 'inletSize', 'sceneSize', 'selectedObject', 'setProps', 'settings', 'showControls', 'showExpandButton', 'showExportButton', 'showImageButton', 'showPositionButton', 'toggleVisibility'] self.available_wildcard_properties = [] _explicit_args = kwargs.pop('_explicit_args') _locals = locals() _locals.update(kwargs) # For wildcard attrs and excess named props args = {k: _locals[k] for k in _explicit_args if k != 'children'} super(PhononAnimationScene, self).__init__(children=children, **args)
setattr(PhononAnimationScene, "__init__", _explicitize_args(PhononAnimationScene.__init__))