This commit is contained in:
2025-12-30 09:08:41 +07:00
parent 4962cfbf49
commit 63cb260cb2
112 changed files with 456 additions and 456 deletions

View File

@@ -11,7 +11,7 @@
#include <memory>
#include <std_msgs/Header.h>
#include <geometry_msgs/Pose2D.h>
#include <robot_geometry_msgs/Pose2D.h>
namespace robot_nav_2d_msgs
{
@@ -35,7 +35,7 @@ struct Pose2DStamped_
typedef ::std_msgs::Header _header_type;
_header_type header;
typedef ::geometry_msgs::Pose2D _pose_type;
typedef ::robot_geometry_msgs::Pose2D _pose_type;
_pose_type pose;

View File

@@ -28,7 +28,7 @@ target_include_directories(conversions
target_link_libraries(conversions
PUBLIC
robot_nav_2d_msgs
geometry_msgs
robot_geometry_msgs
nav_msgs
nav_grid
nav_core2
@@ -52,7 +52,7 @@ target_include_directories(path_ops
target_link_libraries(path_ops
PUBLIC
robot_nav_2d_msgs
geometry_msgs
robot_geometry_msgs
robot_cpp
)
@@ -66,17 +66,17 @@ target_include_directories(polygons
if(robot_xmlrpcpp_FOUND)
target_include_directories(polygons PRIVATE ${robot_xmlrpcpp_INCLUDE_DIRS})
target_link_libraries(polygons
PUBLIC robot_nav_2d_msgs geometry_msgs robot_cpp
PUBLIC robot_nav_2d_msgs robot_geometry_msgs robot_cpp
PRIVATE ${robot_xmlrpcpp_LIBRARIES})
elseif(XmlRpcCpp_FOUND)
target_include_directories(polygons PRIVATE ${XmlRpcCpp_INCLUDE_DIRS})
target_link_libraries(polygons
PUBLIC robot_nav_2d_msgs geometry_msgs robot_cpp
PUBLIC robot_nav_2d_msgs robot_geometry_msgs robot_cpp
PRIVATE ${XmlRpcCpp_LIBRARIES})
else()
target_include_directories(polygons PRIVATE ${robot_xmlrpcpp_INCLUDE_DIRS})
target_link_libraries(polygons
PUBLIC robot_nav_2d_msgs geometry_msgs robot_cpp
PUBLIC robot_nav_2d_msgs robot_geometry_msgs robot_cpp
PRIVATE ${robot_xmlrpcpp_LIBRARIES})
endif()
@@ -110,7 +110,7 @@ target_include_directories(tf_help
target_link_libraries(tf_help
PUBLIC
robot_nav_2d_msgs
geometry_msgs
robot_geometry_msgs
nav_core2
tf3
robot_cpp
@@ -166,5 +166,5 @@ message(STATUS "Project: ${PROJECT_NAME}")
message(STATUS "Version: ${PROJECT_VERSION}")
message(STATUS "C++ Standard: ${CMAKE_CXX_STANDARD}")
message(STATUS "Libraries: conversions, path_ops, polygons, bounds, tf_help")
message(STATUS "Dependencies: robot_nav_2d_msgs, geometry_msgs, nav_msgs, nav_grid, nav_core2, tf3, console_bridge, Boost")
message(STATUS "Dependencies: robot_nav_2d_msgs, robot_geometry_msgs, nav_msgs, nav_grid, nav_core2, tf3, console_bridge, Boost")
message(STATUS "=================================")

View File

@@ -5,35 +5,35 @@
## Twist Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
| -- | -- |
| `Twist2D twist3Dto2D(geometry_msgs::Twist)` | `geometry_msgs::Twist twist2Dto3D(Twist2D cmd_vel_2d)`
| `Twist2D twist3Dto2D(robot_geometry_msgs::Twist)` | `robot_geometry_msgs::Twist twist2Dto3D(Twist2D cmd_vel_2d)`
## Point Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
| -- | -- |
| `Point2D pointToPoint2D(geometry_msgs::Point)` | `geometry_msgs::Point pointToPoint3D(Point2D)`
| `Point2D pointToPoint2D(geometry_msgs::Point32)` | `geometry_msgs::Point32 pointToPoint32(Point2D)`
| `Point2D pointToPoint2D(robot_geometry_msgs::Point)` | `robot_geometry_msgs::Point pointToPoint3D(Point2D)`
| `Point2D pointToPoint2D(robot_geometry_msgs::Point32)` | `robot_geometry_msgs::Point32 pointToPoint32(Point2D)`
## Pose Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
| -- | -- |
| `Pose2DStamped poseStampedToPose2D(geometry_msgs::PoseStamped)` | `geometry_msgs::PoseStamped pose2DToPoseStamped(Pose2DStamped)`
||`geometry_msgs::PoseStamped pose2DToPoseStamped(geometry_msgs::Pose2D, std::string, robot::Time)`|
||`geometry_msgs::Pose pose2DToPose(geometry_msgs::Pose2D)`|
| `Pose2DStamped poseStampedToPose2D(robot_geometry_msgs::PoseStamped)` | `robot_geometry_msgs::PoseStamped pose2DToPoseStamped(Pose2DStamped)`
||`robot_geometry_msgs::PoseStamped pose2DToPoseStamped(robot_geometry_msgs::Pose2D, std::string, robot::Time)`|
||`robot_geometry_msgs::Pose pose2DToPose(robot_geometry_msgs::Pose2D)`|
| `Pose2DStamped stampedPoseToPose2D(tf::Stamped<tf::Pose>)` | |
## Path Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
| -- | -- |
| `Path2D pathToPath(nav_msgs::Path)` |`nav_msgs::Path pathToPath(Path2D)`
| `Path2D posesToPath2D(std::vector<geometry_msgs::PoseStamped>)` | `nav_msgs::Path poses2DToPath(std::vector<geometry_msgs::Pose2D>, std::string, robot::Time)`
| `Path2D posesToPath2D(std::vector<robot_geometry_msgs::PoseStamped>)` | `nav_msgs::Path poses2DToPath(std::vector<robot_geometry_msgs::Pose2D>, std::string, robot::Time)`
Also, `nav_msgs::Path posesToPath(std::vector<geometry_msgs::PoseStamped>)`
Also, `nav_msgs::Path posesToPath(std::vector<robot_geometry_msgs::PoseStamped>)`
## Polygon Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
| -- | -- |
| `Polygon2D polygon3Dto2D(geometry_msgs::Polygon)` |`geometry_msgs::Polygon polygon2Dto3D(Polygon2D)`
| `Polygon2DStamped polygon3Dto2D(geometry_msgs::PolygonStamped)` | `geometry_msgs::PolygonStamped polygon2Dto3D(Polygon2DStamped)`
| `Polygon2D polygon3Dto2D(robot_geometry_msgs::Polygon)` |`robot_geometry_msgs::Polygon polygon2Dto3D(Polygon2D)`
| `Polygon2DStamped polygon3Dto2D(robot_geometry_msgs::PolygonStamped)` | `robot_geometry_msgs::PolygonStamped polygon2Dto3D(Polygon2DStamped)`
## Info Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |
@@ -46,7 +46,7 @@ Also, `nav_msgs::Path posesToPath(std::vector<geometry_msgs::PoseStamped>)`
| to two dimensional pose | to three dimensional pose |
| -- | -- |
| `Pose2D getOrigin2D(nav_grid::NavGridInfo)` | `geometry_msgs::Pose getOrigin3D(nav_grid::NavGridInfo)`|
| `Pose2D getOrigin2D(nav_grid::NavGridInfo)` | `robot_geometry_msgs::Pose getOrigin3D(nav_grid::NavGridInfo)`|
## Bounds Transformations
| to `robot_nav_2d_msgs` | from `robot_nav_2d_msgs` |

View File

@@ -35,10 +35,10 @@
#ifndef ROBOT_NAV_2D_UTILS_CONVERSIONS_H
#define ROBOT_NAV_2D_UTILS_CONVERSIONS_H
#include <geometry_msgs/Point.h>
#include <geometry_msgs/Pose.h>
#include <geometry_msgs/Twist.h>
#include <geometry_msgs/PolygonStamped.h>
#include <robot_geometry_msgs/Point.h>
#include <robot_geometry_msgs/Pose.h>
#include <robot_geometry_msgs/Twist.h>
#include <robot_geometry_msgs/PolygonStamped.h>
#include <robot_nav_2d_msgs/Twist2D.h>
#include <robot_nav_2d_msgs/Path2D.h>
#include <robot_nav_2d_msgs/Point2D.h>
@@ -58,42 +58,42 @@
namespace robot_nav_2d_utils
{
// Twist Transformations
::geometry_msgs::Twist twist2Dto3D(const ::robot_nav_2d_msgs::Twist2D &cmd_vel_2d);
::robot_nav_2d_msgs::Twist2D twist3Dto2D(const ::geometry_msgs::Twist &cmd_vel);
::robot_geometry_msgs::Twist twist2Dto3D(const ::robot_nav_2d_msgs::Twist2D &cmd_vel_2d);
::robot_nav_2d_msgs::Twist2D twist3Dto2D(const ::robot_geometry_msgs::Twist &cmd_vel);
// Point Transformations
::robot_nav_2d_msgs::Point2D pointToPoint2D(const ::geometry_msgs::Point &point);
::robot_nav_2d_msgs::Point2D pointToPoint2D(const ::geometry_msgs::Point32 &point);
::geometry_msgs::Point pointToPoint3D(const ::robot_nav_2d_msgs::Point2D &point);
::geometry_msgs::Point32 pointToPoint32(const ::robot_nav_2d_msgs::Point2D &point);
::robot_nav_2d_msgs::Point2D pointToPoint2D(const ::robot_geometry_msgs::Point &point);
::robot_nav_2d_msgs::Point2D pointToPoint2D(const ::robot_geometry_msgs::Point32 &point);
::robot_geometry_msgs::Point pointToPoint3D(const ::robot_nav_2d_msgs::Point2D &point);
::robot_geometry_msgs::Point32 pointToPoint32(const ::robot_nav_2d_msgs::Point2D &point);
// Pose Transformations
// ::robot_nav_2d_msgs::Pose2DStamped stampedPoseToPose2D(const tf::Stamped<tf::Pose>& pose);
::robot_nav_2d_msgs::Pose2DStamped poseStampedToPose2D(const ::geometry_msgs::PoseStamped &pose);
::geometry_msgs::Pose pose2DToPose(const ::geometry_msgs::Pose2D &pose2d);
::geometry_msgs::PoseStamped pose2DToPoseStamped(const ::robot_nav_2d_msgs::Pose2DStamped &pose2d);
::geometry_msgs::PoseStamped pose2DToPoseStamped(const ::geometry_msgs::Pose2D &pose2d,
::robot_nav_2d_msgs::Pose2DStamped poseStampedToPose2D(const ::robot_geometry_msgs::PoseStamped &pose);
::robot_geometry_msgs::Pose pose2DToPose(const ::robot_geometry_msgs::Pose2D &pose2d);
::robot_geometry_msgs::PoseStamped pose2DToPoseStamped(const ::robot_nav_2d_msgs::Pose2DStamped &pose2d);
::robot_geometry_msgs::PoseStamped pose2DToPoseStamped(const ::robot_geometry_msgs::Pose2D &pose2d,
const ::std::string &frame, const robot::Time &stamp);
// Path Transformations
::robot_nav_2d_msgs::Path2D pathToPath(const nav_msgs::Path &path);
nav_msgs::Path posesToPath(const ::std::vector<::geometry_msgs::PoseStamped> &poses);
::robot_nav_2d_msgs::Path2D posesToPath2D(const ::std::vector<::geometry_msgs::PoseStamped> &poses);
nav_msgs::Path poses2DToPath(const ::std::vector<::geometry_msgs::Pose2D> &poses,
nav_msgs::Path posesToPath(const ::std::vector<::robot_geometry_msgs::PoseStamped> &poses);
::robot_nav_2d_msgs::Path2D posesToPath2D(const ::std::vector<::robot_geometry_msgs::PoseStamped> &poses);
nav_msgs::Path poses2DToPath(const ::std::vector<::robot_geometry_msgs::Pose2D> &poses,
const ::std::string &frame, const robot::Time &stamp);
nav_msgs::Path pathToPath(const ::robot_nav_2d_msgs::Path2D &path2d);
// Polygon Transformations
::geometry_msgs::Polygon polygon2Dto3D(const ::robot_nav_2d_msgs::Polygon2D &polygon_2d);
::robot_nav_2d_msgs::Polygon2D polygon3Dto2D(const ::geometry_msgs::Polygon &polygon_3d);
::geometry_msgs::PolygonStamped polygon2Dto3D(const ::robot_nav_2d_msgs::Polygon2DStamped &polygon_2d);
::robot_nav_2d_msgs::Polygon2DStamped polygon3Dto2D(const ::geometry_msgs::PolygonStamped &polygon_3d);
::robot_geometry_msgs::Polygon polygon2Dto3D(const ::robot_nav_2d_msgs::Polygon2D &polygon_2d);
::robot_nav_2d_msgs::Polygon2D polygon3Dto2D(const ::robot_geometry_msgs::Polygon &polygon_3d);
::robot_geometry_msgs::PolygonStamped polygon2Dto3D(const ::robot_nav_2d_msgs::Polygon2DStamped &polygon_2d);
::robot_nav_2d_msgs::Polygon2DStamped polygon3Dto2D(const ::robot_geometry_msgs::PolygonStamped &polygon_3d);
// Info Transformations
::robot_nav_2d_msgs::NavGridInfo toMsg(const nav_grid::NavGridInfo &info);
nav_grid::NavGridInfo fromMsg(const ::robot_nav_2d_msgs::NavGridInfo &msg);
::geometry_msgs::Pose getOrigin3D(const nav_grid::NavGridInfo &info);
::geometry_msgs::Pose2D getOrigin2D(const nav_grid::NavGridInfo &info);
::robot_geometry_msgs::Pose getOrigin3D(const nav_grid::NavGridInfo &info);
::robot_geometry_msgs::Pose2D getOrigin2D(const nav_grid::NavGridInfo &info);
nav_grid::NavGridInfo infoToInfo(const nav_msgs::MapMetaData &metadata, const ::std::string &frame);
nav_msgs::MapMetaData infoToInfo(const nav_grid::NavGridInfo &info);

View File

@@ -42,7 +42,7 @@ namespace robot_nav_2d_utils
/**
* @brief Calculate the linear distance between two poses
*/
double poseDistance(const geometry_msgs::Pose2D &pose0, const geometry_msgs::Pose2D &pose1);
double poseDistance(const robot_geometry_msgs::Pose2D &pose0, const robot_geometry_msgs::Pose2D &pose1);
/**
* @brief Calculate the length of the plan, starting from the given index
@@ -52,7 +52,7 @@ namespace robot_nav_2d_utils
/**
* @brief Calculate the length of the plan from the pose on the plan closest to the given pose
*/
double getPlanLength(const robot_nav_2d_msgs::Path2D &plan, const geometry_msgs::Pose2D &query_pose);
double getPlanLength(const robot_nav_2d_msgs::Path2D &plan, const robot_geometry_msgs::Pose2D &query_pose);
/**
* @brief Increase plan resolution to match that of the costmap by adding points linearly between points

View File

@@ -37,7 +37,7 @@
#include <robot_nav_2d_msgs/Polygon2D.h>
#include <robot_nav_2d_msgs/ComplexPolygon2D.h>
#include <geometry_msgs/Pose2D.h>
#include <robot_geometry_msgs/Pose2D.h>
#include <robot_xmlrpcpp/XmlRpcValue.h>
#include <vector>
#include <string>
@@ -148,7 +148,7 @@ bool equals(const robot_nav_2d_msgs::Polygon2D& polygon0, const robot_nav_2d_msg
* @return A new moved polygon
*/
robot_nav_2d_msgs::Polygon2D movePolygonToPose(const robot_nav_2d_msgs::Polygon2D& polygon,
const geometry_msgs::Pose2D& pose);
const robot_geometry_msgs::Pose2D& pose);
/**
* @brief Check if a given point is inside of a polygon

View File

@@ -36,7 +36,7 @@
#define ROBOT_NAV_2D_UTILS_TF_HELP_H
#include <nav_core2/common.h>
#include <geometry_msgs/PoseStamped.h>
#include <robot_geometry_msgs/PoseStamped.h>
#include <robot_nav_2d_msgs/Pose2DStamped.h>
#include <string>
@@ -54,7 +54,7 @@ namespace robot_nav_2d_utils
* @return True if successful transform
*/
bool transformPose(const TFListenerPtr tf, const ::std::string frame,
const ::geometry_msgs::PoseStamped &in_pose, ::geometry_msgs::PoseStamped &out_pose,
const ::robot_geometry_msgs::PoseStamped &in_pose, ::robot_geometry_msgs::PoseStamped &out_pose,
const bool extrapolation_fallback = true);
/**
@@ -83,7 +83,7 @@ namespace robot_nav_2d_utils
* @param frame_id Frame to transform the pose into
* @return The resulting transformed pose
*/
geometry_msgs::Pose2D transformStampedPose(const TFListenerPtr tf, const ::robot_nav_2d_msgs::Pose2DStamped &pose,
robot_geometry_msgs::Pose2D transformStampedPose(const TFListenerPtr tf, const ::robot_nav_2d_msgs::Pose2DStamped &pose,
const ::std::string &frame_id);
} // namespace robot_nav_2d_utils

View File

@@ -38,16 +38,16 @@
namespace robot_nav_2d_utils
{
geometry_msgs::Twist twist2Dto3D(const robot_nav_2d_msgs::Twist2D &cmd_vel_2d)
robot_geometry_msgs::Twist twist2Dto3D(const robot_nav_2d_msgs::Twist2D &cmd_vel_2d)
{
geometry_msgs::Twist cmd_vel;
robot_geometry_msgs::Twist cmd_vel;
cmd_vel.linear.x = cmd_vel_2d.x;
cmd_vel.linear.y = cmd_vel_2d.y;
cmd_vel.angular.z = cmd_vel_2d.theta;
return cmd_vel;
}
robot_nav_2d_msgs::Twist2D twist3Dto2D(const geometry_msgs::Twist &cmd_vel)
robot_nav_2d_msgs::Twist2D twist3Dto2D(const robot_geometry_msgs::Twist &cmd_vel)
{
robot_nav_2d_msgs::Twist2D cmd_vel_2d;
cmd_vel_2d.x = cmd_vel.linear.x;
@@ -56,7 +56,7 @@ namespace robot_nav_2d_utils
return cmd_vel_2d;
}
robot_nav_2d_msgs::Point2D pointToPoint2D(const geometry_msgs::Point &point)
robot_nav_2d_msgs::Point2D pointToPoint2D(const robot_geometry_msgs::Point &point)
{
robot_nav_2d_msgs::Point2D output;
output.x = point.x;
@@ -64,7 +64,7 @@ namespace robot_nav_2d_utils
return output;
}
robot_nav_2d_msgs::Point2D pointToPoint2D(const geometry_msgs::Point32 &point)
robot_nav_2d_msgs::Point2D pointToPoint2D(const robot_geometry_msgs::Point32 &point)
{
robot_nav_2d_msgs::Point2D output;
output.x = point.x;
@@ -72,17 +72,17 @@ namespace robot_nav_2d_utils
return output;
}
geometry_msgs::Point pointToPoint3D(const robot_nav_2d_msgs::Point2D &point)
robot_geometry_msgs::Point pointToPoint3D(const robot_nav_2d_msgs::Point2D &point)
{
geometry_msgs::Point output;
robot_geometry_msgs::Point output;
output.x = point.x;
output.y = point.y;
return output;
}
geometry_msgs::Point32 pointToPoint32(const robot_nav_2d_msgs::Point2D &point)
robot_geometry_msgs::Point32 pointToPoint32(const robot_nav_2d_msgs::Point2D &point)
{
geometry_msgs::Point32 output;
robot_geometry_msgs::Point32 output;
output.x = point.x;
output.y = point.y;
return output;
@@ -99,7 +99,7 @@ namespace robot_nav_2d_utils
// return pose2d;
// }
robot_nav_2d_msgs::Pose2DStamped poseStampedToPose2D(const geometry_msgs::PoseStamped &pose)
robot_nav_2d_msgs::Pose2DStamped poseStampedToPose2D(const robot_geometry_msgs::PoseStamped &pose)
{
robot_nav_2d_msgs::Pose2DStamped pose2d;
pose2d.header = pose.header;
@@ -109,27 +109,27 @@ namespace robot_nav_2d_utils
return pose2d;
}
geometry_msgs::Pose pose2DToPose(const geometry_msgs::Pose2D &pose2d)
robot_geometry_msgs::Pose pose2DToPose(const robot_geometry_msgs::Pose2D &pose2d)
{
geometry_msgs::Pose pose;
robot_geometry_msgs::Pose pose;
pose.position.x = pose2d.x;
pose.position.y = pose2d.y;
// pose.orientation = tf::createQuaternionMsgFromYaw(pose2d.theta);
return pose;
}
geometry_msgs::PoseStamped pose2DToPoseStamped(const robot_nav_2d_msgs::Pose2DStamped &pose2d)
robot_geometry_msgs::PoseStamped pose2DToPoseStamped(const robot_nav_2d_msgs::Pose2DStamped &pose2d)
{
geometry_msgs::PoseStamped pose;
robot_geometry_msgs::PoseStamped pose;
pose.header = pose2d.header;
pose.pose = pose2DToPose(pose2d.pose);
return pose;
}
// geometry_msgs::PoseStamped pose2DToPoseStamped(const geometry_msgs::Pose2D& pose2d,
// robot_geometry_msgs::PoseStamped pose2DToPoseStamped(const robot_geometry_msgs::Pose2D& pose2d,
// const std::string& frame, const robot::Time& stamp)
// {
// geometry_msgs::PoseStamped pose;
// robot_geometry_msgs::PoseStamped pose;
// pose.header.frame_id = frame;
// pose.header.stamp = stamp;
// pose.pose.position.x = pose2d.x;
@@ -152,7 +152,7 @@ namespace robot_nav_2d_utils
return path2d;
}
nav_msgs::Path posesToPath(const std::vector<geometry_msgs::PoseStamped> &poses)
nav_msgs::Path posesToPath(const std::vector<robot_geometry_msgs::PoseStamped> &poses)
{
nav_msgs::Path path;
if (poses.empty())
@@ -168,7 +168,7 @@ namespace robot_nav_2d_utils
return path;
}
robot_nav_2d_msgs::Path2D posesToPath2D(const std::vector<geometry_msgs::PoseStamped> &poses)
robot_nav_2d_msgs::Path2D posesToPath2D(const std::vector<robot_geometry_msgs::PoseStamped> &poses)
{
robot_nav_2d_msgs::Path2D path;
if (poses.empty())
@@ -186,7 +186,7 @@ namespace robot_nav_2d_utils
return path;
}
// nav_msgs::Path poses2DToPath(const std::vector<geometry_msgs::Pose2D>& poses,
// nav_msgs::Path poses2DToPath(const std::vector<robot_geometry_msgs::Pose2D>& poses,
// const std::string& frame, const robot::Time& stamp)
// {
// nav_msgs::Path path;
@@ -213,9 +213,9 @@ namespace robot_nav_2d_utils
return path;
}
geometry_msgs::Polygon polygon2Dto3D(const robot_nav_2d_msgs::Polygon2D &polygon_2d)
robot_geometry_msgs::Polygon polygon2Dto3D(const robot_nav_2d_msgs::Polygon2D &polygon_2d)
{
geometry_msgs::Polygon polygon;
robot_geometry_msgs::Polygon polygon;
polygon.points.reserve(polygon_2d.points.size());
for (const auto &pt : polygon_2d.points)
{
@@ -224,7 +224,7 @@ namespace robot_nav_2d_utils
return polygon;
}
robot_nav_2d_msgs::Polygon2D polygon3Dto2D(const geometry_msgs::Polygon &polygon_3d)
robot_nav_2d_msgs::Polygon2D polygon3Dto2D(const robot_geometry_msgs::Polygon &polygon_3d)
{
robot_nav_2d_msgs::Polygon2D polygon;
polygon.points.reserve(polygon_3d.points.size());
@@ -235,15 +235,15 @@ namespace robot_nav_2d_utils
return polygon;
}
geometry_msgs::PolygonStamped polygon2Dto3D(const robot_nav_2d_msgs::Polygon2DStamped &polygon_2d)
robot_geometry_msgs::PolygonStamped polygon2Dto3D(const robot_nav_2d_msgs::Polygon2DStamped &polygon_2d)
{
geometry_msgs::PolygonStamped polygon;
robot_geometry_msgs::PolygonStamped polygon;
polygon.header = polygon_2d.header;
polygon.polygon = polygon2Dto3D(polygon_2d.polygon);
return polygon;
}
robot_nav_2d_msgs::Polygon2DStamped polygon3Dto2D(const geometry_msgs::PolygonStamped &polygon_3d)
robot_nav_2d_msgs::Polygon2DStamped polygon3Dto2D(const robot_geometry_msgs::PolygonStamped &polygon_3d)
{
robot_nav_2d_msgs::Polygon2DStamped polygon;
polygon.header = polygon_3d.header;
@@ -291,18 +291,18 @@ namespace robot_nav_2d_utils
return info;
}
geometry_msgs::Pose getOrigin3D(const nav_grid::NavGridInfo &info)
robot_geometry_msgs::Pose getOrigin3D(const nav_grid::NavGridInfo &info)
{
geometry_msgs::Pose origin;
robot_geometry_msgs::Pose origin;
origin.position.x = info.origin_x;
origin.position.y = info.origin_y;
origin.orientation.w = 1.0;
return origin;
}
geometry_msgs::Pose2D getOrigin2D(const nav_grid::NavGridInfo &info)
robot_geometry_msgs::Pose2D getOrigin2D(const nav_grid::NavGridInfo &info)
{
geometry_msgs::Pose2D origin;
robot_geometry_msgs::Pose2D origin;
origin.x = info.origin_x;
origin.y = info.origin_y;
return origin;

View File

@@ -40,7 +40,7 @@
namespace robot_nav_2d_utils
{
double poseDistance(const geometry_msgs::Pose2D &pose0, const geometry_msgs::Pose2D &pose1)
double poseDistance(const robot_geometry_msgs::Pose2D &pose0, const robot_geometry_msgs::Pose2D &pose1)
{
return hypot(pose0.x - pose1.x, pose0.y - pose1.y);
}
@@ -55,7 +55,7 @@ namespace robot_nav_2d_utils
return length;
}
double getPlanLength(const robot_nav_2d_msgs::Path2D &plan, const geometry_msgs::Pose2D &query_pose)
double getPlanLength(const robot_nav_2d_msgs::Path2D &plan, const robot_geometry_msgs::Pose2D &query_pose)
{
if (plan.poses.size() == 0)
return 0.0;
@@ -87,10 +87,10 @@ namespace robot_nav_2d_utils
global_plan_out.poses.push_back(last_stp);
double sq_resolution = resolution * resolution;
geometry_msgs::Pose2D last = last_stp.pose;
robot_geometry_msgs::Pose2D last = last_stp.pose;
for (unsigned int i = 1; i < global_plan_in.poses.size(); ++i)
{
geometry_msgs::Pose2D loop = global_plan_in.poses[i].pose;
robot_geometry_msgs::Pose2D loop = global_plan_in.poses[i].pose;
double sq_dist = (loop.x - last.x) * (loop.x - last.x) + (loop.y - last.y) * (loop.y - last.y);
if (sq_dist > sq_resolution)
{

View File

@@ -365,7 +365,7 @@ bool equals(const robot_nav_2d_msgs::Polygon2D& polygon0, const robot_nav_2d_msg
}
robot_nav_2d_msgs::Polygon2D movePolygonToPose(const robot_nav_2d_msgs::Polygon2D& polygon,
const geometry_msgs::Pose2D& pose)
const robot_geometry_msgs::Pose2D& pose)
{
robot_nav_2d_msgs::Polygon2D new_polygon;
new_polygon.points.resize(polygon.points.size());

View File

@@ -42,7 +42,7 @@
namespace robot_nav_2d_utils
{
bool transformPose(const TFListenerPtr tf, const ::std::string frame,
const ::geometry_msgs::PoseStamped &in_pose, ::geometry_msgs::PoseStamped &out_pose,
const ::robot_geometry_msgs::PoseStamped &in_pose, ::robot_geometry_msgs::PoseStamped &out_pose,
const bool extrapolation_fallback)
{
// if (in_pose.header.frame_id == frame)
@@ -60,7 +60,7 @@ namespace robot_nav_2d_utils
// {
// if (!extrapolation_fallback)
// throw;
// geometry_msgs::PoseStamped latest_in_pose;
// robot_geometry_msgs::PoseStamped latest_in_pose;
// latest_in_pose.header.frame_id = in_pose.header.frame_id;
// latest_in_pose.pose = in_pose.pose;
// tf->transform(latest_in_pose, out_pose, frame);
@@ -78,8 +78,8 @@ namespace robot_nav_2d_utils
const ::robot_nav_2d_msgs::Pose2DStamped &in_pose, ::robot_nav_2d_msgs::Pose2DStamped &out_pose,
const bool extrapolation_fallback)
{
geometry_msgs::PoseStamped in_3d_pose = pose2DToPoseStamped(in_pose);
geometry_msgs::PoseStamped out_3d_pose;
robot_geometry_msgs::PoseStamped in_3d_pose = pose2DToPoseStamped(in_pose);
robot_geometry_msgs::PoseStamped out_3d_pose;
bool ret = transformPose(tf, frame, in_3d_pose, out_3d_pose, extrapolation_fallback);
if (ret)
@@ -89,7 +89,7 @@ namespace robot_nav_2d_utils
return ret;
}
::geometry_msgs::Pose2D transformStampedPose(const TFListenerPtr tf, const ::robot_nav_2d_msgs::Pose2DStamped &pose,
::robot_geometry_msgs::Pose2D transformStampedPose(const TFListenerPtr tf, const ::robot_nav_2d_msgs::Pose2DStamped &pose,
const ::std::string &frame_id)
{
robot_nav_2d_msgs::Pose2DStamped local_pose;

View File

@@ -148,7 +148,7 @@ TEST(Polygon2D, broken_arrays)
TEST(Polygon2D, test_move)
{
Polygon2D square = polygonFromString("[[0.5, 0.5], [0.5, -0.5], [-0.5, -0.5], [-0.5, 0.5]]");
geometry_msgs::Pose2D pose;
robot_geometry_msgs::Pose2D pose;
Polygon2D square2 = robot_nav_2d_utils::movePolygonToPose(square, pose);
EXPECT_TRUE(robot_nav_2d_utils::equals(square, square2));
pose.x = 15;

View File

@@ -489,7 +489,7 @@ Changelog for package tf2
* more compatability
* bringing in helper functions for buffer_core from tf.h/cpp
* rethrowing to new exceptions
* converting Storage to geometry_msgs::TransformStamped
* converting Storage to robot_geometry_msgs::TransformStamped
* removing deprecated useage
* cleaning up includes
* moving all implementations into cpp file

View File

@@ -163,7 +163,7 @@ public:
* New in geometry 1.1
*/
/*
geometry_msgs::Twist
robot_geometry_msgs::Twist
lookupTwist(const std::string& tracking_frame, const std::string& observation_frame, const std::string& reference_frame,
const tf::Point & reference_point, const std::string& reference_point_frame,
const robot::Time& time, const robot::Duration& averaging_interval) const;
@@ -181,7 +181,7 @@ public:
* New in geometry 1.1
*/
/*
geometry_msgs::Twist
robot_geometry_msgs::Twist
lookupTwist(const std::string& tracking_frame, const std::string& observation_frame,
const robot::Time& time, const robot::Duration& averaging_interval) const;
*/

View File

@@ -1,4 +1,4 @@
// Compatibility types to avoid using robot:: or geometry_msgs:: namespaces inside tf3
// Compatibility types to avoid using robot:: or robot_geometry_msgs:: namespaces inside tf3
#ifndef TF3_COMPAT_H
#define TF3_COMPAT_H
@@ -7,7 +7,7 @@
namespace tf3 {
// Minimal header/message equivalents owned by tf3 (no robot:: or geometry_msgs::)
// Minimal header/message equivalents owned by tf3 (no robot:: or robot_geometry_msgs::)
struct HeaderMsg
{
uint32_t seq;

View File

@@ -53,7 +53,7 @@ template<typename T>
}
/** Generic version of toQuaternion. It tries to convert the argument
* to a geometry_msgs::Quaternion
* to a robot_geometry_msgs::Quaternion
* \param t some object
* \return a copy of the same quaternion as a tf3::Quaternion
*/

View File

@@ -672,14 +672,14 @@ tf3::TransformStampedMsg BufferCore::lookupTransform(const std::string& target_f
/*
geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
robot_geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
const std::string& observation_frame,
const robot::Time& time,
const robot::Duration& averaging_interval) const
{
try
{
geometry_msgs::Twist t;
robot_geometry_msgs::Twist t;
old_tf_.lookupTwist(tracking_frame, observation_frame,
time, averaging_interval, t);
return t;
@@ -702,7 +702,7 @@ geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
}
}
geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
robot_geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
const std::string& observation_frame,
const std::string& reference_frame,
const tf3::Point & reference_point,
@@ -711,7 +711,7 @@ geometry_msgs::Twist BufferCore::lookupTwist(const std::string& tracking_frame,
const robot::Duration& averaging_interval) const
{
try{
geometry_msgs::Twist t;
robot_geometry_msgs::Twist t;
old_tf_.lookupTwist(tracking_frame, observation_frame, reference_frame, reference_point, reference_point_frame,
time, averaging_interval, t);
return t;

View File

@@ -32,7 +32,7 @@
#include "tf3/LinearMath/Quaternion.h"
#include <stdexcept>
#include <geometry_msgs/TransformStamped.h>
#include <robot_geometry_msgs/TransformStamped.h>
#include <cmath>

View File

@@ -36,7 +36,7 @@
TEST(tf3, setTransformFail)
{
tf3::BufferCore tfc;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
EXPECT_FALSE(tfc.setTransform(st, "authority1"));
}
@@ -44,7 +44,7 @@ TEST(tf3, setTransformFail)
TEST(tf3, setTransformValid)
{
tf3::BufferCore tfc;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.frame_id = "foo";
st.header.stamp = robot::Time(1.0);
st.child_frame_id = "child";
@@ -56,7 +56,7 @@ TEST(tf3, setTransformValid)
TEST(tf3, setTransformInvalidQuaternion)
{
tf3::BufferCore tfc;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.frame_id = "foo";
st.header.stamp = robot::Time(1.0);
st.child_frame_id = "child";
@@ -86,7 +86,7 @@ TEST(tf3_canTransform, Nothing_Exists)
TEST(tf3_lookupTransform, LookupException_One_Exists)
{
tf3::BufferCore tfc;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.frame_id = "foo";
st.header.stamp = robot::Time(1.0);
st.child_frame_id = "child";
@@ -99,7 +99,7 @@ TEST(tf3_lookupTransform, LookupException_One_Exists)
TEST(tf3_canTransform, One_Exists)
{
tf3::BufferCore tfc;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.frame_id = "foo";
st.header.stamp = robot::Time(1.0);
st.child_frame_id = "child";
@@ -113,7 +113,7 @@ TEST(tf3_chainAsVector, chain_v_configuration)
tf3::BufferCore mBC;
tf3::TestBufferCore tBC;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.stamp = robot::Time(0);
st.transform.rotation.w = 1;
@@ -196,7 +196,7 @@ TEST(tf3_walkToTopParent, walk_i_configuration)
tf3::BufferCore mBC;
tf3::TestBufferCore tBC;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.stamp = robot::Time(0);
st.transform.rotation.w = 1;
@@ -243,7 +243,7 @@ TEST(tf3_walkToTopParent, walk_v_configuration)
tf3::BufferCore mBC;
tf3::TestBufferCore tBC;
geometry_msgs::TransformStamped st;
robot_geometry_msgs::TransformStamped st;
st.header.stamp = robot::Time(0);
st.transform.rotation.w = 1;

View File

@@ -50,7 +50,7 @@ int main(int argc, char** argv)
console_bridge::setLogLevel(console_bridge::CONSOLE_BRIDGE_LOG_INFO);
tf3::BufferCore bc;
geometry_msgs::TransformStamped t;
robot_geometry_msgs::TransformStamped t;
t.header.stamp = robot::Time(1);
t.header.frame_id = "root";
t.child_frame_id = "0";
@@ -106,7 +106,7 @@ int main(int argc, char** argv)
std::string v_frame0 = boost::lexical_cast<std::string>(num_levels - 1);
std::string v_frame1 = boost::lexical_cast<std::string>(num_levels/2 - 1);
CONSOLE_BRIDGE_logInform("%s to %s", v_frame0.c_str(), v_frame1.c_str());
geometry_msgs::TransformStamped out_t;
robot_geometry_msgs::TransformStamped out_t;
const uint32_t count = 1000000;
CONSOLE_BRIDGE_logInform("Doing %d %d-level %lf-interval tests", count, num_levels, time_interval);

View File

@@ -31,7 +31,7 @@
#include <tf3/time_cache.h>
#include <stdexcept>
#include <geometry_msgs/TransformStamped.h>
#include <robot_geometry_msgs/TransformStamped.h>
#include <cmath>