You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 11, 2026. It is now read-only.
When using costmaps to resolve a location designator, and this designator is a reachability one, then the robot-pose-gaussian-costmap::reachable-location-validator function is used.
This function performs a simple check that the distance between the candidate solution pose and the target pose in the designator is between a min and a max threshold. However, these thresholds are the same as the ones used to create the costmap from which the solution is sampled; we are pretty much guaranteed this distance will never be outside the threshholds because the costmap itself is hard cut off at them.
Suggestion: perform a call to ik to actually check reachability (I have code for this in the Bolzano branch of my fork). A couple of notes about the suggestion:
service calls tend to spam the console with debug messages, especially when the IK fails for several candidates; they're written that way in roslisp, presumably, but maybe some messages might be silenced when required
this makes designator validation dependent on some sort of tf. For example, if one wants to quickly check that designators in the projection world are solvable, and wants to do this in the REPL command line, it's better to use a (pr2-proj:with-projected-robot (desig:reference ...)) than a simple (desig:reference ...)
When using costmaps to resolve a location designator, and this designator is a reachability one, then the robot-pose-gaussian-costmap::reachable-location-validator function is used.
This function performs a simple check that the distance between the candidate solution pose and the target pose in the designator is between a min and a max threshold. However, these thresholds are the same as the ones used to create the costmap from which the solution is sampled; we are pretty much guaranteed this distance will never be outside the threshholds because the costmap itself is hard cut off at them.
Suggestion: perform a call to ik to actually check reachability (I have code for this in the Bolzano branch of my fork). A couple of notes about the suggestion: