如何创建geometry_msgs :: Point?

时间:2019-07-02 10:22:56

标签: c++ ros

我正在使用ROS旋律。

这不是机器人问题,而​​是C ++问题。

我正在尝试以下C ++代码:

#include "ros/ros.h"
#include "geometry_msgs/Point.h"
#include "geometry_msgs/Twist.h"
#include "geometry_msgs/Quaternion.h"
#include "tf/transform_datatypes.h"
#include "tf/LinearMath/Matrix3x3.h"
#include "nav_msgs/Odometry.h"

#include <sstream>
#include <cmath>
#include <cstdlib>
#include <queue>

// ... More code

geometry_msgs::Point p;

但是我收到以下错误消息:

no instance of constructor "geometry_msgs::Point_<containerallocator>::Point_ [with ContainerAllocator=std::allocator<void>]" matches the argument list -- argument types are: (double, double)

这是Point.h头。

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

检查是否在geometry_msgspackage.xml中添加了CMakeLists.txt。如果没有,那么只需添加它即可。

package.xml 中添加:

<depend>geometry_msgs</depend>

CMakeLists.txt 中添加:

find_package(catkin REQUIRED COMPONENTS
  geometry_msgs
)

catkin_package(
  CATKIN_DEPENDS geometry_msgs
)