What’s new in SOFA v20.06
New: SofaDefrost plugins integration
SoftRobots
This plugin contains components dedicated to soft robotics.
It provides models for cable and pneumatic actuations, tools to define trajectories for the robot’s end effector, or tools to communicate with microcontroller boards.
See SoftRobots repository for details.
ModelOrderReduction
This plugin contains components with python utilitaries allowing to perform model reduction and use these reduced model easily in a SOFA scene.
See ModelOrderReduction repository for details.
Breaking: BaseClass reflection
A lot of work has been done to simplify and clean all SOFA introspection API:
- Move name decoding aspect in a separated file called NameDecoder.h
- Remove duplicated custom template name
- Removal of nullptr in className, templateName, typeName
SOFA codebase has been updated accordingly and, for now, the old functions are still available with a deprecated message.
All instructions to update your code are in the pull-request description.
See pull-request #1283.
Improved: Architecture
As always, architecture has been improved towards modularity and easier deployment.
Breaking: Eigen3 auto-fetch
Eigen3 auto-fetch in sources has been removed. It caused problems when an external program tried to compile with both SOFA and another version of Eigen.
Now, SOFA relies on the standard find_package(Eigen3). Users and developpers must install Eigen on their machine.
See pull-request #1281.
Breaking: EulerExplicitSolver
Renamed from EulerSolver, the EulerExplicitSolver can now handle sparse mass matrix with Euler explicit scheme.
See pull-request #1260.