Show EOL distros:
Package Summary
The pose_cov_ops package
- Maintainer: Jose Luis <jose.luis AT todo DOT todo>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/mrpt_common.git (branch: master)
 
Package Summary
The pose_cov_ops package
- Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/mrpt_navigation.git (branch: indigo-devel)
 
Package Summary
C++ library for SE(2/3) pose and 2D/3D point composition operations with uncertainty
- Maintainer status: maintained
 - Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/pose_cov_ops.git (branch: master)
 
Package Summary
Library with C++ functions for SE(2/3) pose and 2D/3D point composition operations with uncertainty
- Maintainer status: maintained
 - Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/pose_cov_ops.git (branch: master)
 
Package Summary
C++ library for SE(2/3) pose and 2D/3D point composition operations with uncertainty
- Maintainer status: maintained
 - Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/pose_cov_ops.git (branch: master)
 
Package Summary
C++ library for SE(2)/SE(3) pose composition operations with uncertainty
- Maintainer status: maintained
 - Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/pose_cov_ops.git (branch: master)
 
Package Summary
C++ library for SE(2)/SE(3) pose composition operations with uncertainty
- Maintainer status: maintained
 - Maintainer: Jose-Luis Blanco-Claraco <jlblanco AT ual DOT es>, Markus Bader <markus.bader AT tuwien.ac DOT at>
 - Author:
 - License: BSD
 - Source: git https://github.com/mrpt-ros-pkg/pose_cov_ops.git (branch: master)
 
Provided functionality
See the C++ API documentation for the namespace pose_cov_ops.
This module provides implementations for the four main operations between poses (p,p1,p2) and points (a), which are the following (using the "o plus" and "o minus" notation):
p1 ⊕ p2 : Composition of two poses p1 and p2: the resulting pose is p2 "as if" p1 was the new origin of coordinates for p2.
p2 ⊖ p1 : Inverse composition of two poses p1 and p2: the resulting pose is p2 "as seen from" p1.
p ⊕ a : Composition of a pose p and a point a: the resulting point is a "as if" p was the new origin of coordinates of a.
a ⊖ p : Inverse composition of a pose p and a point a: the resulting point is a "as seen from" p.
Is better to illustrate these operations graphically:
   | 
Examples of usage
   1 #include <mrpt_cov_ops/mrpt_cov_ops.h>
   2 
   3 ...
   4 geometry_msgs::PoseWithCovariance p1, p2, p;
   5 
   6 // p = p1 (+) p2
   7 // Pose composition, including uncertainty in both p1 and p2:
   8 pose_cov_ops::compose(p1,p2,  p);
   9 
  10 ...
  11 geometry_msgs::Pose p1;
  12 geometry_msgs::PoseWithCovariance p2, p;
  13 
  14 // p = p1 (+) p2
  15 // Pose composition, including uncertainty only in p2 (and in the output, obviously!):
  16 pose_cov_ops::compose(p1,p2,  p);
References
Further references on the geometry and the maths behind these functions:
https://www.mrpt.org/tutorials/programming/maths-and-geometry/2d_3d_geometry/
A tutorial on SE(3) transformation parameterizations and on-manifold optimization, J.L. Blanco, Technical report, 2010 PDF.