diff --git a/pinocchio/Makefile b/pinocchio/Makefile index 7acad18ff1e4f4a2d0c3e892bdd763c18eeb4264..c4a97d6eaa830631d4cb7ae73909a1b288696a7a 100644 --- a/pinocchio/Makefile +++ b/pinocchio/Makefile @@ -12,6 +12,7 @@ MAINTAINER= gepetto@laas.fr CATEGORIES= math COMMENT= Efficient rigid body dynamics LICENSE= gnu-lgpl-v3 +PKGREVISION= 1 # parallel builds would consume all memory because of the g++ process size MAKE_JOBS_SAFE= no diff --git a/pinocchio/distinfo b/pinocchio/distinfo index e95101475c59e2a0317f9980afefc034da2c180b..55a53a0008c8624e46b8089ff9e5af719dd0f079 100644 --- a/pinocchio/distinfo +++ b/pinocchio/distinfo @@ -1,3 +1,4 @@ SHA1 (pinocchio-1.2.5.tar.gz) = 4a3e45b3154bf703c8822d2c3c49e32b92edf90e RMD160 (pinocchio-1.2.5.tar.gz) = b03d35e0f0abd1564ba8f44bb08b029dccc4dd1c Size (pinocchio-1.2.5.tar.gz) = 9003067 bytes +SHA1 (patch-aa) = d122db98550c7615572a07454e5801508f2c3a77 diff --git a/pinocchio/patches/patch-aa b/pinocchio/patches/patch-aa new file mode 100644 index 0000000000000000000000000000000000000000..7ccbba25ea2749f7f7c01a35922daf2a3a2905dd --- /dev/null +++ b/pinocchio/patches/patch-aa @@ -0,0 +1,22 @@ +diff --git src/spatial/inertia.hpp src/spatial/inertia.hpp +index 809e1c2..7b33c7b 100644 +--- src/spatial/inertia.hpp ++++ src/spatial/inertia.hpp +@@ -238,7 +238,7 @@ namespace se3 + M.template block<3,3>(LINEAR, LINEAR ).diagonal ().fill (m); + M.template block<3,3>(ANGULAR,LINEAR ) = alphaSkew(m,c); + M.template block<3,3>(LINEAR, ANGULAR) = -M.template block<3,3> (ANGULAR, LINEAR); +- M.template block<3,3>(ANGULAR,ANGULAR) = (typename Symmetric3::Matrix3)(I - AlphaSkewSquare(m,c)); ++ M.template block<3,3>(ANGULAR,ANGULAR) = (I - AlphaSkewSquare(m,c)).matrix(); + + return M; + } +@@ -320,7 +320,7 @@ namespace se3 + res.template block<3,3>(ANGULAR,ANGULAR) = res.template block<3,3>(LINEAR,LINEAR) - res.template block<3,3>(LINEAR,LINEAR).transpose(); + res.template block<3,3>(ANGULAR,ANGULAR) = -skewSquare(mv.linear(),c) - skewSquare(c,mv.linear()); + +- res.template block<3,3>(LINEAR,LINEAR) = (typename Symmetric3::Matrix3)(I - AlphaSkewSquare(m,c)); ++ res.template block<3,3>(LINEAR,LINEAR) = (typename Symmetric3::Matrix3)(I - AlphaSkewSquare(m,c)).matrix(); + + res.template block<3,3>(ANGULAR,ANGULAR) -= res.template block<3,3>(LINEAR,LINEAR) * skew(v.angular()); + res.template block<3,3>(ANGULAR,ANGULAR) += cross(v.angular(),res.template block<3,3>(LINEAR,LINEAR));