Releases: robotology/idyntree
iDynTree 1.2.1 (2020-11-22)
iDynTree 1.2.1 Release Notes
Fixed
Fix compatibility with ipopt from conda-forge on Windows (#764) .
iDynTree 1.2.0 (2020-10-17)
iDynTree 1.2.0 Release Notes
Detailed Changelog
Added
- Added the possibility of reusing an already opened figure with the MATLAB iDynTree Visualizer either if the name coincides or by using gcf.
Changed
SolidShapes.h
public API changes. API changes are back compatible, but as the ABI has changed, this means a re-compilation of the dependent projects is needed. In details:- Added getters and setters to all classes in
SolidShapes.h
(idyntree-model
). Public attributes are still available for compatibility but are now deprecated and will be removed in the next major release of iDynTree (2.x). - Added
Material
class inSolidShapes.h
(idyntree-model
). Thematerial
attribute inSolidShape
is now deprecated. Please use thecolor
property in the newMaterial
class to maintain the previous behaviour. Note that the old and new properties are completely orthogonal. Ensure the code is consistent with their uses.
- Added getters and setters to all classes in
Fixed
iDynTree 1.1.0 (2020-06-08)
iDynTree 1.1.0 Release Notes
Release Highlights
This new release introduce two new features:
New MATLAB based visualizer
A new MATLAB iDynTree visualizer (#682, #668) has been added to the iDynTree's high-level-wrappers.
A tutorial on how to use this new MATLAB visualizer is available in the https://github.com/robotology/idyntree/tree/v1.1.0/bindings/matlab/%2BiDynTreeWrappers#matlab-native-visualization .
Thanks a lot to Francisco Andrade (@fjandrad) that implemented this feature in #668 and #682 .
iDynTree's InverseKinematics MATLAB and Python bindings
The iDynTree's InverseKinematics class has been added to the iDynTree's bindings, so it is now usable from MATLAB and Python bindings. See the following snippet to have an idea on how to use iDynTree.InverseKinematics
in MATLAB:
ik = iDynTree.InverseKinematics();
ik.setModel(robotModel);
% Set IK tolerances
ik.setCostTolerance(0.001);
% ik.setCostTolerance(1.0);
ik.setConstraintsTolerance(0.00001);
% Set targets as cost in the cost function
ik.setDefaultTargetResolutionMode(iDynTree.InverseKinematicsTreatTargetAsConstraintFull);
% Use roll pitch yaw parametrization for the rotational part of the IK
ik.setRotationParametrization(iDynTree.InverseKinematicsRotationParametrizationRollPitchYaw);
ik.setVerbosity(3);
ik.setDefaultTargetResolutionMode(iDynTree.InverseKinematicsTreatTargetAsConstraintNone);
% Add position target
ik.addPositionTarget(frameIdx, G_targetPos);
% --------- Add starting point
% As the IK optimization problem is a non-linear iterative optimization, the
% optimization requires a starting point (to be assumed). Be aware
% that this choice can influence the actual convergence of the algorithm
jointsInitPosInRadians = iDynTree.VectorDynSize();
jointsInitPosInRadians.zero();
ik.setFullJointsInitialCondition(G_T_base, jointsInitPosInRadians);
% --------- Solve the IK
if ~ik.solve()
fprintf('\n Fail to solve IK!\n')
end
G_H_base_optimized = iDynTree.Transform();
jointPos_optimizedInRadians = iDynTree.VectorDynSize();
ik.getFullJointsSolution(G_H_base_optimized, jointPos_optimizedInRadians);
Thanks a lot to Lorenzo Rapetti (@lrapetto) that implemented this feature in #633 .
Acknowledgements
Thanks to the contributors (either as code authors, code reviewers or by contributing documentation) of this version of iDynTree:
- Francisco Andrade (@fjandrad)
- Stefano Dafarra (@S-Dafarra)
- Gabriele Nava (@gabrielenava)
- Giulio Romualdi (@GiulioRomualdi)
- Lorenzo Rapetti (@lrapetti)
- Claudia Latella (@claudia-lat)
- Silvio Traversaro (@traversaro)
Detailed ChangeLog
Added
- Added a new function to
iDynTreeWrappers
for the functiongetWorldTransformsAsHomogeneous
. - Added functions for having a MATLAB iDynTree Visualizer in
iDynTreeWrappers
. Some time optimization has been performed (#659). - Added
bindings
forgetWorldTransformsAsHomogeneous
function. - Added function
getWorldTransformsAsHomogeneous
that gives a vector of Matrix4x4 based on a vector of strings containing the frame transforms. - Added
bindings
for handlinglinkSolidShapes
properly (#656). - Added
bindings
forInverseKinematics
(#633). - Implement
cbegin()
/cend()
andbegin()
/end()
methods forVectorDynSize
andVectorFixSize
(#646). - Added CI for MacOS with
IDYNTREE_USES_OCTAVE
ON
iDynTree 1.0.7 (2020-06-07)
iDynTree 1.0.6 (2020-05-06)
iDynTree 1.0.5 (2020-04-03)
iDynTree 1.0.5 Release Notes
Fixed
- Fix find_package(iDynTree) when iDynTree is built with IDYNTREE_USES_ASSIMP ON and BUILD_SHARED_LIBS OFF (#667).
iDynTree 1.0.4 (2020-04-02)
iDynTree 1.0.4 Release Notes
Fixed
- Further fix for configuration compilation with Assimp >= 5.0.0 (#666).
iDynTree 1.0.3 (2020-04-01)
iDynTree 1.0.2 (2020-02-21)
iDynTree 1.0.2 Release Notes
Fixed
- Remove spurious inclusion of Eigen headers in ExtendedKalmanFilter.h public header, that could create probles when using that header in a downstream project that does not use Eigen (#639).
- Added find_dependency(OsqpEigen) and find_dependency(LibXml2) when iDynTree is compiled as a static library, fixing the use of iDynTree on Windows (#642).
Changed
- To reduce the possible unexpected problems, the automatic set of the
IDYNTREE_USES_<pkg>
CMake variable when the<pkg>
CMake package is available in the system has been removed for Irrlicht and WORHP, as it was already disabled for ASSIMP and ALGLIB (#642). To use this dependencies it is now compulsory to set manually theIDYNTREE_USES_<pkg>
variable toON
.
iDynTree 1.0.1 (2020-01-14)
iDynTree 1.0.1 Release Notes
This is a patch release of iDynTree 1.0, that fixes a regression that caused all the project that used the CMake command find_package(iDynTree <version>)
to fail.
Detailed ChangeLog
Fixed
- Change CMake version compatibility from SameMajorVersion to AnyNewerVersion, as API breakage between major version will be limited, and to avoid breaking the compatibility of any downstream project that request a minimum version of iDynTree as in
find_package(iDynTree 0.11 REQUIRED)
(#629).