-
Notifications
You must be signed in to change notification settings - Fork 4
Python Files Internal Structure
"Firefly" is a python module extension for omegalib. All of the components of firefly are organized as python files. The following document describes all firefly python files in the order that they are loaded.
There will also be links from these files to seperate pages that comprehensively describe every python file, as well as all of the variables that need to be set at that point.
config-file: The first file loaded by the omegalib interpreter. It specifies a few initial variables and is intended to be modified and customized by users.
Additional information: Configuration File
firefly.py
: This file serves no other purpose than to act as a "Hub" file. It loads all of the other files in Firefly in order. It also performs the initialization of the Signac module in omegalib as well as the camera.
Additional information: firefly.py
colormapConfig.py
: Initializes the list of colormaps that will be displayed on the User interface as options, as well as links the colormap names to file names.
Additional information: colormapConfig.py
render.py
: Initializes all the shader configurations, which will later be used as options in the loader file. Any shader initialized here can be set as a shader using the setProgram
function from the pointCloud object.
Additional information: render.py
flyControl.py
: Contains functions that are intended to control all camera movements. Also contains all code intended for pivot point selection.
Additional information: flyControl.py
appstate.py
: Initializes all internal variables used in Firefly. In addition, it also will initialize any variables that were not specified in the config-file.
Additional information: appstate.py
loaderScript: Loads the script specified by the loaderScript
variable specified in the configuration file. Can potentially be customized to fit the user needs. The file loads the files
Additional information: Loader File
scene.py
: Creates the 2D texture overlay which the user sees in the user interface. Responsible for intializing the pointCloudView object, which is responsible for rendering the 3D point data to a 2D texture through raycasting.
Additional information: scene.py
fireflyUi.py
: Responsible for all of the communication between the user interface and the remaining python files. Contains all the most of the python functions that are called directly by the javascript interface. All functions here correspond directly to actions the user can perform on the user interface.
Additional information: FireflyUi
preset.py
: Initializes the "Preset" panel found on the user interface. The preset panel is intended to allow the user to save specific colormap configurations and camera angles and load them up again in another firefly session for reuse.
Additional information: preset.py