// ROS1 -> ROS2 변경점
// 노드
ros::NodeHandle &nh -> std::shared_ptr<rclcpp::Node>& node
ros::Publisher pub_path ->rclcpp::Publisher<nav_msgs::msg::Path>::SharedPtr pub_path
// 시간 관련
ros::Time::now(); -> rclcpp::Clock().now();
header.stamp.toSec() -> header.stamp.sec + header.stamp.nanosec * 1e-9
hearer.stamp.fromSec()
- > odom_aft_mapped_.header.stamp.sec = (unsigned long) std::floor(lidar_end_time_);
odom_aft_mapped_.header.stamp.nanosec = (unsigned long) std::round((lidar_end_time_ - std::floor(lidar_end_time_)) * 1e9);
// msg
sensor_msgs::PointCloud2 -> sensor_msgs::msg::PointCloud2
ROS2 공식 문서를 참고해서 작성
ament_cmake user documentation — ROS 2 Documentation: Foxy documentation
find_package()를 통해 빌드하고자 하는 파일의 의존성에 필요한 라이브러리들을 찾을 수 있다.