The SSD project provides Python3 tools allowing users to easily develop data storage and visualization strategies for their numerical simulations with a minimal lines of code.
This project is divided in two main objectives:
Storage
Easy storage management system for any data from a numerical simulation. Rendering
Easy storage & rendering management systems for visual data from a numerical simulation.
The SSD project is mainly using the :Peewee:`Peewee <>` Python3 library and was mostly designed to fit the :DeepPhysX:`DeepPhysX <>` and :SOFA:`SOFA <>` frameworks.
The SSD project provides the following packages:
SSD.Core.Storage
- Automatic management of Database file for any data;
- Creation of highly customizable Tables in the Database;
- Easy writing and reading user interface;
- Event management system;
- Tools such as merging and exporting data in other formats.
SSD.Core.Rendering
- Automatic management of Database file for visualization data;
- Live rendering of numerical simulations;
- Replay of stored numerical simulation steps;
- Various object types and highly customizable rendering styles;
- Several Python libraries available: :Vedo:`Vedo <>`, :Open3D:`Open3D<>`.
The SSD project also provides a compatible layer with :SOFA:`SOFA <>` framework:
SSD.SOFA.Storage
- Same features as Core Storage package;
- Compatible layer with :SOFA:`SOFA <>` Python bindings.
- Callbacks to automatically record any Data field of SOFA objects.
- Recording can be done whether the simulation is running with
runSofa
or with apython
interpreter.
SSD.SOFA.Rendering
- Same features as Core Rendering package;
- Compatible layer with :SOFA:`SOFA <>` Python bindings.
- Callbacks to automatically record visual Data fields of SOFA objects.
- Recording can be done whether the simulation is running with
runSofa
or with apython
interpreter.- Rendering is available when a simulation is driven with a
python
interpreter.
.. toctree:: :caption: PRESENTATION :maxdepth: 1 :hidden: Install <Presentation/install.rst> Definitions <Presentation/definitions.rst>
.. toctree:: :caption: STORAGE :maxdepth: 1 :hidden: Database <Core/Storage/database.rst> Table Relationships <Core/Storage/relationships.rst> Utils <Core/Storage/utils.rst> API <Core/Storage/api.rst>
.. toctree:: :caption: RENDERING :maxdepth: 1 :hidden: Factory <Core/Rendering/factory.rst> Visualizer <Core/Rendering/visualizer.rst> API <Core/Rendering/api.rst>
.. toctree:: :caption: SOFA :maxdepth: 1 :hidden: Storage <SOFA/storage.rst> Rendering <SOFA/rendering.rst> API <SOFA/api.rst>