Added
- Added the possibility to draw in different portions of the visualizer window and textures at the same time. Allow disabling the drawing on textures (https://github.com/robotology/idyntree/pull/903).
- Implement the `operator[]` for `LinkPositions`, `LinkVelArray` and `LinkAccArray` in the swig python bindings (https://github.com/robotology/idyntree/pull/949)
- Expose `ModelTestUtils` in swig bindings (https://github.com/robotology/idyntree/pull/949)
- Define base and joints attributes for `FreeFloatingPos`, `FreeFloatingVel` and `FreeFloatingAcc` in swig bindings (https://github.com/robotology/idyntree/pull/949)
Deprecated
- The `iDynTree::Visualizer::enviroment()` was deprecated. Please use the `iDynTree::Visualizer::environment()` method instead (https://github.com/robotology/idyntree/pull/903).
- The `iDynTree::idyntree-modelio-urdf` CMake imported target used when using classes such as `iDynTree::ModelLoader` and `iDynTree::ModelExporter` was deprecated. Please use the `iDynTree::idyntree-modelio` imported target instead.
Removed
- The tools that depend on YARP (`urdf2dh`, `yarprobotstatepublisher`, `idyntree-sole-gui`, `iDynTreePlotter`) have been moved in [`idyntree-yarp-tools`](https://github.com/robotology/idyntree-yarp-tools) and their have been removed from iDynTree, together with the the option `IDYNTREE_COMPILES_YARP_TOOLS` that was been introduced to disable their compilation in iDynTree 3 (https://github.com/robotology/idyntree/pull/940).
Fixed
- Fixed the conversion from irrlicht pixels to iDynTree pixels. Fixed a typo in the environment method of the visualizer. Fixed the running of two visualizer instances in the same process (https://github.com/robotology/idyntree/pull/903).
- Fixed the update of the vectors in the visualization that caused the FPS to drop (https://github.com/robotology/idyntree/pull/921).
- Fixed compatibility with pybind11 >= 2.6.0 (https://github.com/robotology/idyntree/issues/867, https://github.com/robotology/idyntree/pull/937).
[Unreleased]
Added
- Added support for exporting joint position limits to URDF for 1-DoF joints
(prismatic and revolute).
- Added pybind11 python bindings for adding and reading joint limits.
- Added the `ModelTransformsSolidShapes.h` header in the `iDynTree::idyntree-solid-shapes` library.
At the moment, this header contains just the `iDynTree::approximateSolidShapesWithPrimitiveShape`
function, useful to approximate the solid shapes of a given iDynTree::Model to a series of bounding boxes (https://github.com/robotology/idyntree/pull/941).
- Added `idyntree-model-simplify-shapes` command line tool. This tool is useful to take in input a model, and
return in output the same model, but with all the geometries of the model approximated with their axis aligned
bounding boxes (https://github.com/robotology/idyntree/issues/933, https://github.com/robotology/idyntree/pull/941).
Fixed
- In the URDF exporter, export only frames attached to the exported traversal [914](https://github.com/robotology/idyntree/pull/914).
- Fixed handling of the AMENT_PREFIX_PATH environment variable (https://github.com/robotology/idyntree/pull/915).
- `__is_mesh` in the `MeshcatVisualizer` now returns `false` for non-meshes, and instead was raising an error (https://github.com/robotology/idyntree/pull/925).
Deprecated
- The option `IDYNTREE_COMPILES_YARP_TOOLS`, that was already deprecated in iDynTree 3, is now set to `OFF` by default. It will be removed in iDynTree 5, please use the repo https://github.com/robotology/idyntree-yarp-tools instead (https://github.com/robotology/idyntree/pull/919).