Main Page
From SOFAWiki
SOFA Community Wiki
SOFA is an Open Source framework primarily targeted at real-time simulation, with an emphasis on medical simulation. It is mostly intended for the research community to help develop newer algorithms, but can also be used as an efficient prototyping tool. Based on an advanced software architecture, it allows to:
- create complex and evolving simulations by combining new algorithms with algorithms already included in SOFA
- modify most parameters of the simulation – deformable behavior, surface representation, solver, constraints, collision algorithm, etc. – by simply editing an XML file
- build complex models from simpler ones using a scene-graph description
- efficiently simulate the dynamics of interacting objects using abstract equation solvers
- reuse and easily compare a variety of available methods
SOFA is currently developed by 3 INRIA teams: Alcove, Evasion and Asclepios but the project also benefited from the help of the CIMIT Sim Group, ETH Zurich and CSIRO.
Contents |
SOFA
- What is SOFA?
- How to get SOFA
- Installation, compilation
- First Steps with SOFA
- User Interactions
- FAQ
Get Support
Need help using SOFA? You can contact us using the sofa-users mailing list
The SOFA API
- Doxygen API documentation
- Components and Datas
- Visitors and Solvers
- Data Dependencies
- The ObjectFactory
- Loop Components
- GUI
Writing SOFA scenes
Developing for SOFA
- Developing a new SOFA Component
- Creating a new Plugin for SOFA
- Tools for SOFA Development
- Coding Rules
- Tips
- Profiling your code
- (Windows) DLL Export of specific templates instantiation
- Tracking memory leaks with Valgrind
Tools for SOFA
How To
- How to monitor computation time
- How to monitor some properties
- How to run a sequence of tests to verify the behavior of Sofa
- How to create new interactions with the Mouse
- How to pause the animation
- How to display the vertex indices
- How to write C++ simulation code
- How to use the SOFA QGLViewer
- How to export a VisualModel to a Wavefront OBJ file
- How to create a video of a simulation
- How to build and load a plugin
- How to write your own plugin
About SOFA Components
About SOFA Plugins and optional modules
- Optional modules
- The plugin mechanism
- Creating a new Plugin for SOFA
- Using CGAL
- Using Ogre Viewer
- Haptic
