mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-03 16:27:46 +08:00
Changes to build on ROS humble.
This commit is contained in:
+19
-19
@@ -37,6 +37,7 @@ find_package(image_transport REQUIRED)
|
||||
find_package(tf2 REQUIRED)
|
||||
find_package(tf2_eigen REQUIRED)
|
||||
find_package(tf2_ros REQUIRED)
|
||||
find_package(tf2_geometry_msgs REQUIRED)
|
||||
#find_package(eigen_conversions REQUIRED)
|
||||
find_package(laser_geometry REQUIRED)
|
||||
find_package(pcl_conversions REQUIRED)
|
||||
@@ -223,6 +224,7 @@ SET(Libraries
|
||||
tf2
|
||||
tf2_eigen
|
||||
tf2_ros
|
||||
tf2_geometry_msgs
|
||||
laser_geometry
|
||||
message_filters
|
||||
class_loader
|
||||
@@ -335,13 +337,11 @@ ament_target_dependencies(rtabmap_common ${Libraries})
|
||||
ament_target_dependencies(rtabmap_sync ${Libraries})
|
||||
ament_target_dependencies(rtabmap_plugins ${Libraries})
|
||||
|
||||
target_link_libraries(rtabmap_common ${RTABMap_LIBRARIES})
|
||||
target_link_libraries(rtabmap_sync rtabmap_common ${RTABMap_LIBRARIES})
|
||||
target_link_libraries(rtabmap_plugins rtabmap_common ${RTABMap_LIBRARIES})
|
||||
rosidl_get_typesupport_target(cpp_typesupport_target ${PROJECT_NAME} "rosidl_typesupport_cpp")
|
||||
|
||||
rosidl_target_interfaces(rtabmap_common ${PROJECT_NAME} "rosidl_typesupport_cpp")
|
||||
rosidl_target_interfaces(rtabmap_sync ${PROJECT_NAME} "rosidl_typesupport_cpp")
|
||||
rosidl_target_interfaces(rtabmap_plugins ${PROJECT_NAME} "rosidl_typesupport_cpp")
|
||||
target_link_libraries(rtabmap_common ${cpp_typesupport_target} ${RTABMap_LIBRARIES})
|
||||
target_link_libraries(rtabmap_sync rtabmap_common ${cpp_typesupport_targeT} ${RTABMap_LIBRARIES})
|
||||
target_link_libraries(rtabmap_plugins rtabmap_common ${cpp_typesupport_target} ${RTABMap_LIBRARIES})
|
||||
|
||||
rclcpp_components_register_nodes(rtabmap_plugins "rtabmap_ros::RGBDOdometry")
|
||||
rclcpp_components_register_nodes(rtabmap_plugins "rtabmap_ros::StereoOdometry")
|
||||
@@ -504,41 +504,41 @@ find_package("${rmw_implementation}" REQUIRED)
|
||||
get_rmw_typesupport(typesupport_impls "${rmw_implementation}" LANGUAGE "cpp")
|
||||
|
||||
foreach(typesupport_impl ${typesupport_impls})
|
||||
rosidl_target_interfaces(rtabmap_rgbd_odometry
|
||||
rosidl_get_typesupport_target(rtabmap_rgbd_odometry
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_stereo_odometry
|
||||
rosidl_get_typesupport_target(rtabmap_stereo_odometry
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_icp_odometry
|
||||
rosidl_get_typesupport_target(rtabmap_icp_odometry
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_rgbd_relay
|
||||
rosidl_get_typesupport_target(rtabmap_rgbd_relay
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_rgbd_sync
|
||||
rosidl_get_typesupport_target(rtabmap_rgbd_sync
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_rgbdx_sync
|
||||
rosidl_get_typesupport_target(rtabmap_rgbdx_sync
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_rgb_sync
|
||||
rosidl_get_typesupport_target(rtabmap_rgb_sync
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_stereo_sync
|
||||
rosidl_get_typesupport_target(rtabmap_stereo_sync
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_pointcloud_to_depthimage
|
||||
rosidl_get_typesupport_target(rtabmap_pointcloud_to_depthimage
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap_point_cloud_xyzrgb
|
||||
rosidl_get_typesupport_target(rtabmap_point_cloud_xyzrgb
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
rosidl_target_interfaces(rtabmap
|
||||
rosidl_get_typesupport_target(rtabmap
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
IF(RTABMAP_GUI)
|
||||
rosidl_target_interfaces(rtabmapviz
|
||||
rosidl_get_typesupport_target(rtabmapviz
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
ENDIF()
|
||||
@@ -598,7 +598,7 @@ IF(rviz_default_plugins_FOUND)
|
||||
ENDIF(Qt5_FOUND)
|
||||
|
||||
foreach(typesupport_impl ${typesupport_impls})
|
||||
rosidl_target_interfaces(rtabmap_rviz_plugins
|
||||
rosidl_get_typesupport_target(rtabmap_rviz_plugins
|
||||
${PROJECT_NAME} ${typesupport_impl}
|
||||
)
|
||||
endforeach()
|
||||
|
||||
@@ -246,7 +246,7 @@ private:
|
||||
void publishStats(const rclcpp::Time & stamp);
|
||||
void publishCurrentGoal(const rclcpp::Time & stamp);
|
||||
|
||||
void goalResponseCallback(std::shared_future<GoalHandleNav2::SharedPtr> future);
|
||||
void goalResponseCallback(const GoalHandleNav2::SharedPtr & goal_handle);
|
||||
void resultCallback(const GoalHandleNav2::WrappedResult & result);
|
||||
|
||||
void publishLocalPath(const rclcpp::Time & stamp);
|
||||
|
||||
+7
-8
@@ -680,7 +680,7 @@ CoreWrapper::CoreWrapper(const rclcpp::NodeOptions & options) :
|
||||
if(!odomFrameId_.empty())
|
||||
{
|
||||
mapToOdomMutex_.lock();
|
||||
rclcpp::Time tfExpiration = now() + rclcpp::Duration(tfTolerance*10e9);
|
||||
rclcpp::Time tfExpiration = now() + rclcpp::Duration::from_seconds(tfTolerance*10e9);
|
||||
geometry_msgs::msg::TransformStamped msg;
|
||||
msg.child_frame_id = odomFrameId_;
|
||||
msg.header.frame_id = mapFrameId_;
|
||||
@@ -906,7 +906,7 @@ void CoreWrapper::defaultCallback(const sensor_msgs::msg::Image::ConstSharedPtr
|
||||
|
||||
if(rate_>0.0f)
|
||||
{
|
||||
if(previousStamp_.seconds() > 0.0 && stamp.seconds() > previousStamp_.seconds() && stamp - previousStamp_ < rclcpp::Duration(1.0f/rate_))
|
||||
if(previousStamp_.seconds() > 0.0 && stamp.seconds() > previousStamp_.seconds() && stamp - previousStamp_ < rclcpp::Duration::from_seconds(1.0f/rate_))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -3592,7 +3592,7 @@ void CoreWrapper::publishMapCallback(
|
||||
marker.color.r = 1.0;
|
||||
marker.color.g = 1.0;
|
||||
marker.color.b = 0.0;
|
||||
marker.lifetime = rclcpp::Duration(2.0f/rate_);
|
||||
marker.lifetime = rclcpp::Duration::from_seconds(2.0f/rate_);
|
||||
|
||||
marker.type = visualization_msgs::msg::Marker::TEXT_VIEW_FACING;
|
||||
marker.text = uNumber2Str(iter->first);
|
||||
@@ -3705,7 +3705,7 @@ void CoreWrapper::publishMapCallback(
|
||||
marker.color.r = 1.0;
|
||||
marker.color.g = 1.0;
|
||||
marker.color.b = 1.0;
|
||||
marker.lifetime = rclcpp::Duration(2.0f/rate_);
|
||||
marker.lifetime = rclcpp::Duration::from_seconds(2.0f/rate_);
|
||||
|
||||
marker.type = visualization_msgs::msg::Marker::TEXT_VIEW_FACING;
|
||||
marker.text = uNumber2Str(iter->first);
|
||||
@@ -4279,7 +4279,7 @@ void CoreWrapper::publishStats(const rclcpp::Time & stamp)
|
||||
marker.color.r = 0.0;
|
||||
marker.color.g = 1.0;
|
||||
marker.color.b = 0.0;
|
||||
marker.lifetime = rclcpp::Duration(2.0f/rate_);
|
||||
marker.lifetime = rclcpp::Duration::from_seconds(2.0f/rate_);
|
||||
|
||||
marker.type = visualization_msgs::msg::Marker::TEXT_VIEW_FACING;
|
||||
marker.text = uNumber2Str(iter->first);
|
||||
@@ -4360,7 +4360,7 @@ void CoreWrapper::publishStats(const rclcpp::Time & stamp)
|
||||
marker.color.r = 1.0;
|
||||
marker.color.g = 1.0;
|
||||
marker.color.b = 1.0;
|
||||
marker.lifetime = rclcpp::Duration(2.0f/rate_);
|
||||
marker.lifetime = rclcpp::Duration::from_seconds(2.0f/rate_);
|
||||
|
||||
marker.type = visualization_msgs::msg::Marker::TEXT_VIEW_FACING;
|
||||
marker.text = uNumber2Str(poseIter->first);
|
||||
@@ -4445,9 +4445,8 @@ void CoreWrapper::publishCurrentGoal(const rclcpp::Time & stamp)
|
||||
}
|
||||
|
||||
void CoreWrapper::goalResponseCallback(
|
||||
std::shared_future<GoalHandleNav2::SharedPtr> future)
|
||||
const GoalHandleNav2::SharedPtr & goal_handle)
|
||||
{
|
||||
auto goal_handle = future.get();
|
||||
if (!goal_handle) {
|
||||
RCLCPP_ERROR(this->get_logger(), "Goal was rejected by server");
|
||||
rtabmap_.clearPath(1);
|
||||
|
||||
@@ -2134,7 +2134,7 @@ bool convertScanMsg(
|
||||
rtabmap::Transform tmpT = getTransform(
|
||||
odomFrameId.empty()?frameId:odomFrameId,
|
||||
scan2dMsg.header.frame_id,
|
||||
rclcpp::Time(scan2dMsg.header.stamp.sec, scan2dMsg.header.stamp.nanosec) + rclcpp::Duration(scan2dMsg.ranges.size()*scan2dMsg.time_increment*10e9),
|
||||
rclcpp::Time(scan2dMsg.header.stamp.sec, scan2dMsg.header.stamp.nanosec) + rclcpp::Duration::from_seconds(scan2dMsg.ranges.size()*scan2dMsg.time_increment*10e9),
|
||||
tfBuffer,
|
||||
waitForTransform);
|
||||
if(tmpT.isNull())
|
||||
|
||||
@@ -306,7 +306,7 @@ void ICPOdometry::callbackScan(const sensor_msgs::msg::LaserScan::SharedPtr scan
|
||||
// make sure the frame of the laser is updated too
|
||||
Transform localScanTransform = getTransform(this->frameId(),
|
||||
scanMsg->header.frame_id,
|
||||
rclcpp::Time(scanMsg->header.stamp.sec, scanMsg->header.stamp.nanosec) + rclcpp::Duration(scanMsg->ranges.size()*scanMsg->time_increment*10e9),
|
||||
rclcpp::Time(scanMsg->header.stamp.sec, scanMsg->header.stamp.nanosec) + rclcpp::Duration::from_seconds(scanMsg->ranges.size()*scanMsg->time_increment*10e9),
|
||||
tfBuffer(), waitForTransform());
|
||||
if(localScanTransform.isNull())
|
||||
{
|
||||
|
||||
@@ -145,7 +145,7 @@ void RGBSync::callback(
|
||||
bool publishCompressed = true;
|
||||
if (compressedRate_ > 0.0)
|
||||
{
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration(1.0/compressedRate_) > now())
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration::from_seconds(1.0/compressedRate_) > now())
|
||||
{
|
||||
RCLCPP_DEBUG(this->get_logger(), "throttle last update at %f skipping", lastCompressedPublished_.seconds());
|
||||
publishCompressed = false;
|
||||
|
||||
@@ -190,7 +190,7 @@ void RGBDSync::callback(
|
||||
bool publishCompressed = true;
|
||||
if (compressedRate_ > 0.0)
|
||||
{
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration(1.0/compressedRate_) > now())
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration::from_seconds(1.0/compressedRate_) > now())
|
||||
{
|
||||
RCLCPP_DEBUG(this->get_logger(), "throttle last update at %f skipping", lastCompressedPublished_.seconds());
|
||||
publishCompressed = false;
|
||||
|
||||
@@ -146,7 +146,7 @@ void StereoSync::callback(
|
||||
bool publishCompressed = true;
|
||||
if (compressedRate_ > 0.0)
|
||||
{
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration(1.0/compressedRate_) > now())
|
||||
if ( lastCompressedPublished_ + rclcpp::Duration::from_seconds(1.0/compressedRate_) > now())
|
||||
{
|
||||
RCLCPP_DEBUG(this->get_logger(), "throttle last update at %f skipping", lastCompressedPublished_.seconds());
|
||||
publishCompressed = false;
|
||||
|
||||
Reference in New Issue
Block a user