19#ifndef EASYNAV_COSTMAP_PLANNER__COSTMAPPLANNER_HPP_
20#define EASYNAV_COSTMAP_PLANNER__COSTMAPPLANNER_HPP_
24#include "nav_msgs/msg/path.hpp"
26#include "easynav_core/PlannerMethodBase.hpp"
28#include "easynav_common/types/NavState.hpp"
64 void update(NavState & nav_state)
override;
75 rclcpp::Publisher<nav_msgs::msg::Path>::SharedPtr
path_pub_;
94 const geometry_msgs::msg::Pose & start,
95 const geometry_msgs::msg::Pose & goal);
A 2D costmap provides a mapping between points in the world and their associated "costs".
Definition costmap_2d.hpp:66
void update(NavState &nav_state) override
Executes a planning cycle using the current navigation state.
Definition CostmapPlanner.cpp:141
bool continuous_replan_
Wheter replan path at freq time.
Definition CostmapPlanner.hpp:70
CostmapPlanner()
Default constructor.
Definition CostmapPlanner.cpp:111
double heuristic_scale_
Scaling factor applied to the heuristic term in A*.
Definition CostmapPlanner.hpp:69
double cost_factor_
Scaling factor applied to cell cost values.
Definition CostmapPlanner.hpp:67
nav_msgs::msg::Path current_path_
Most recently computed path.
Definition CostmapPlanner.hpp:71
geometry_msgs::msg::Pose current_goal_
Current goal.
Definition CostmapPlanner.hpp:72
rclcpp::Publisher< nav_msgs::msg::Path >::SharedPtr path_pub_
Publisher for the computed navigation path (for visualization or monitoring).
Definition CostmapPlanner.hpp:75
virtual void on_initialize() override
Initializes the planner.
Definition CostmapPlanner.cpp:123
std::vector< geometry_msgs::msg::Pose > a_star_path(const Costmap2D &map, const geometry_msgs::msg::Pose &start, const geometry_msgs::msg::Pose &goal)
Internal A* path planning routine.
Definition CostmapPlanner.cpp:256
double inflation_penalty_
Extra cost penalty for paths near inflated obstacles.
Definition CostmapPlanner.hpp:68
Provides a mapping for often used cost values.
Definition cost_values.hpp:41