Skip to content

Release 1.1.2

Compare
Choose a tag to compare
@fvalenza fvalenza released this 31 May 15:39
· 8443 commits to master since this release

Summary

This release is directly accessible as a Debian package. Please see https://github.com/stack-of-tasks/pinocchio/wiki/installation for further details.

New Features

  • Added operational frames (that are a Plucker coordinate frame attached to a parent joint inside a kinematic tree). Position and Jacobian of such frames can be computed
  • Geometry primitives can now be handled (and added to the Pinocchio GeometryModel) when encountered in an urdf file
  • Implemented simple srdf parsing for GeometryData : parse the desactivated collision pairs
  • Added Articulated Body Algorithm (ABA), and CCRBA
  • When parsing a urdf file, now look in the environment variable ROS_PACKAGE_PATH for directories where to search for meshes. Users can provide hint directories to search in as a priority. Updated python RobotWrapper consequently
  • Added forward dynamics with contact algorithm
  • Added algorithms working with vectors of configuration or velocity(either on a JointModel or on a Model, iterating through all the kinematic tree)
    • One can integrate a configuration at a constant velocity during a unit time
    • One can differentiate two configurations (i.e compute the velocity that must be integrated during a unit time to go from first configuration to the other )
    • One can interpolate between two configurations
    • One cancompute the distance between two configurations ( such as dist = norm ( difference) )
    • One can shoot a configuration uniformly sampled between specified limits
  • Added Impulse Dynamic Algorithm
  • Completed the list of method to access or call Joint's data or method when joint are stored in a variant.
  • Added JointAccessor that is a general joint encapsulating a JointVariant ( abstracting the use of visitors for the user).

API modifications

  • Moved limits from joint models to Model as vectors of size nq for position limits and size nv for velocity and effort limits
  • The Geometry objects stored in GeometryModel are now splitted in two types : visual and collision

Minor

  • Improved documentation of Data, Model, Spatial Classes
  • Improved efficiency when executing algorithms
  • One can now create Inertia for simple shapes such as cylinders, boxes, ellipsoid
  • Rework some unittests to increase to coverage of whole package ( C++ and Python )

Bugs Fixed

  • Fixed operator Inertia x constraint in JointSphericalZYX
  • Fixed the Dense conversion of joints (models and datas)
    Fixed bugs in JointRevoluteUnaligned and JointPrismaticUnaligned to access the access when visiting a variant containing such joints with boost::fusion