/home/runner/work/beluga/beluga/beluga_ros/include/beluga_ros/tf2_sophus.hpp File Reference

/home/runner/work/beluga/beluga/beluga_ros/include/beluga_ros/tf2_sophus.hpp File Reference#

Beluga ROS: /home/runner/work/beluga/beluga/beluga_ros/include/beluga_ros/tf2_sophus.hpp File Reference
Beluga ROS
tf2_sophus.hpp File Reference

Message conversion API overloads for Sophus types. More...

#include <tf2/convert.h>
#include <tf2/utils.h>
#include <beluga/algorithm/unscented_transform.hpp>
#include <beluga/eigen_compatibility.hpp>
#include <cmath>
#include <sophus/common.hpp>
#include <sophus/se2.hpp>
#include <sophus/se3.hpp>
#include <sophus/types.hpp>
#include <beluga_ros/messages.hpp>
Include dependency graph for tf2_sophus.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 tf2
 tf2 namespace extension for message conversion overload resolution.
 
 Sophus
 Sophus namespace extension for message conversion function overload resolution (ADL enabled).
 

Functions

template<typename Scalar >
Eigen::Vector< Scalar, 6 > detail::tangential_space_to_xyz_rpy (const Eigen::Vector< Scalar, 6 > &tangent)
 
template<class Scalar >
beluga_ros::msg::Pose & tf2::toMsg (const Sophus::SE2< Scalar > &in, beluga_ros::msg::Pose &out)
 Converts a Sophus SE2 type to a Pose message. More...
 
template<class Scalar >
beluga_ros::msg::Pose & tf2::toMsg (const Sophus::SE3< Scalar > &in, beluga_ros::msg::Pose &out)
 Converts a Sophus SE3 type to a Pose message. More...
 
template<class Scalar >
beluga_ros::msg::Transform tf2::toMsg (const Sophus::SE2< Scalar > &in)
 Converts a Sophus SE2 type to a Transform message. More...
 
template<class Scalar >
beluga_ros::msg::Transform tf2::toMsg (const Sophus::SE3< Scalar > &in)
 Converts a Sophus SE3 type to a Transform message. More...
 
template<class Scalar >
void tf2::fromMsg (const beluga_ros::msg::Transform &msg, Sophus::SE2< Scalar > &out)
 Converts a Transform message type to a Sophus SE2 type. More...
 
template<class Scalar >
void tf2::fromMsg (const beluga_ros::msg::Transform &msg, Sophus::SE3< Scalar > &out)
 Converts a Transform message type to a Sophus SE3 type. More...
 
template<class Scalar >
void tf2::fromMsg (const beluga_ros::msg::Pose &msg, Sophus::SE2< Scalar > &out)
 Converts a Pose message type to a Sophus SE2 type. More...
 
template<class Scalar >
void tf2::fromMsg (const beluga_ros::msg::Pose &msg, Sophus::SE3< Scalar > &out)
 Converts a Pose message type to a Sophus SE3 type. More...
 
template<template< typename, std::size_t > class Array, typename Scalar >
Array< Scalar, 36 > & tf2::covarianceEigenToRowMajor (const Sophus::Matrix3< Scalar > &in, Array< Scalar, 36 > &out)
 Converts a Sophus (ie. Eigen) 3x3 covariance matrix to a 6x6 row-major array. More...
 
template<template< typename, std::size_t > class Array, typename Scalar >
Sophus::Matrix3< Scalar > & tf2::covarianceRowMajorToEigen (const Array< Scalar, 36 > &in, Sophus::Matrix3< Scalar > &out)
 Converts a 6x6 row-major array to an Eigen 3x3 covariance matrix. More...
 
template<typename Scalar >
beluga_ros::msg::PoseWithCovariance tf2::toMsg (const Sophus::SE3< Scalar > &in, const Eigen::Matrix< Scalar, 6, 6 > &covariance)
 
template<class Scalar >
beluga_ros::msg::Transform Sophus::toMsg (const Sophus::SE2< Scalar > &pose)
 Converts an SE2 pose to a geometry_msgs/Transform message.
 
template<class Scalar >
beluga_ros::msg::Transform Sophus::toMsg (const Sophus::SE3< Scalar > &in)
 Converts an SE3 pose to a geometry_msgs/Transform message.
 
template<class Scalar >
void Sophus::fromMsg (const beluga_ros::msg::Transform &message, Sophus::SE2< Scalar > &pose)
 Extracts an SE2 pose from a geometry_msgs/Transform message.
 
template<class Scalar >
void Sophus::fromMsg (const beluga_ros::msg::Transform &message, Sophus::SE3< Scalar > &pose)
 Extracts an SE3 pose from a geometry_msgs/Transform message.
 
template<class Scalar >
void Sophus::fromMsg (const beluga_ros::msg::Pose &message, Sophus::SE2< Scalar > &pose)
 Extracts an SE2 pose from a geometry_msgs/Pose message.
 
template<class Scalar >
void Sophus::fromMsg (const beluga_ros::msg::Pose &message, Sophus::SE3< Scalar > &pose)
 Extracts an SE3 pose from a geometry_msgs/Pose message.
 

Detailed Description

Message conversion API overloads for Sophus types.

Function Documentation

◆ tangential_space_to_xyz_rpy()

template<typename Scalar >
Eigen::Vector<Scalar, 6> detail::tangential_space_to_xyz_rpy ( const Eigen::Vector< Scalar, 6 > &  tangent)
inline

Converts a vector representing a tangent in se3 space, and returns a vector representing the same SE3 transform with extrinsic RPY parametrization.