Conversation
Handle change from s to ns in clock time. Display the last trajectory position for a fixed time before looping back around.
henningkayser
left a comment
There was a problem hiding this comment.
Thank you! Can you retarget this change to 'main'? That is what we use as development head. We can backport any bugfixes to humble or other stable branches.
|
This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete. |
|
This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete. |
|
Please target the |
|
This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete. |
|
This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete. |
|
This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete. |
|
#3567 is relevant to this PR (I raised ros2/rviz#1533 to make the time be in std::chrono::nanoseconds, and #3567 updates MoveIt to take advantage of those changes) |
Description
The RViz plugin for displaying planned trajectories handles elapsed time incorrectly. Probably sometime in the last few years the dt passed to
Updatewas switched from "s" to "ns," and this plugin wasn't updated.Also, the plugin doesn't show the last pose in the trajectory. When we are on the last pose in the trajectory, we call
displaying_trajectory_message_->getWayPointDurationFromPrevious(current_state_ + 1);to determine how long to display the pose for. This returns 0 and we accordingly display it for 0s.Instead, I chose to put in a constant 1s display time (scaled by the user's trajectory playback rate) at the end of each trajectory so it will pause at the end briefly before looping back to the start, or disappearing.
Checklist