hector_navigation
hector_navigation copied to clipboard
Frame of published goal_pose and observation_pose
The HectorExplorationPlanner::makePlan function publishes original_goal
on 'goal_pose'
topic and adjusted_goal
on 'observation_pose'
topic. However, the frame info of these published poses (i.e., frame_id field) is not always available:
- the function takes
original_goal
as input and assumes it to be in 'map' frame. To make the code more robust, it should check for the frame oforiginal_goal
before computing the plan. -
HectorExplorationPlanner
class computesadjusted_goal
and sets its frame to be 'map' in one program execution path. In other execution paths,adjusted_goal
is same asoriginal_goal
whose frame_id can be empty. So, the frame ofadjusted_goal
is not always set. Moreover, the hard-coded 'map' values assumes that costmap global frame is set to 'map' in the config file.
I think checking and specifying frame info would make the code more robust and readable for its users, as well as would force developers to set the frame_id of the goal pose before passing it to makePlan(..)
and thus avoid potential issues in their applications.
Would really appreciate if you could explain your perspective on not enforcing the frame info check and its effects/usefulness for the other developers who use this application node.
Thank you!