1. Features

1.1. Overview

SlicerSOFA provides an integration layer between the SOFA simulation framework and 3D Slicer enabling researchers to build, run and visualize physics-based simulations (soft tissue, deformable models, etc.) inside 3D Slicer.

Main features include:

  • Load and run SOFA scenes from within Slicer.

  • Visualize SOFA simulation state inside Slicer’s 2D and 3D views.

  • Example modules demonstrating typical use-cases: - SoftTissueSimulation: interactive soft tissue scenes. - SparseGridSimulation: specialized sparse-grid based simulations.

  • Utilities to map SOFA data structures (meshes, transforms, pointclouds) to VTK/MRML.

  • Python and C++ interfaces to control, step, pause and interact with simulations.

  • Integrated build of ching/building required external dependencies (SOFA, Eigen, Boost, GLEW, pybind11, etc.).

1.2. Design goals

  • Keep simulations reproducible and scriptable through Slicer’s Python interface.

  • Make simulation outputs (meshes, transforms) available as MRML nodes for further processing and visualization inside Slicer.

  • Provide example simulations and a framework to extend Slicer with custom SOFA scenes and components.

1.3. Acknowledgments

The initial core developers are:

  • Rafael Palomar (Oslo University Hospital / NTNU, Norway)

  • Paul Baksic (Inria, France)

  • Steve Pieper (Isomics, Inc.)