We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RobotState::setFromIK() returns false when the tip frame passed is a subframe.
RobotState::setFromIK()
tip
This is due to the method only checking if the frame is the name of an attached body.
This is in contrast to the ROS1 code, which calls getRigidlyConnectedParentLinkModel(), which is subframe aware.
getRigidlyConnectedParentLinkModel()
The code is a bit different in ROS2, however, RobotState already has a method for looking up frames with subframe awareness.
RobotState
As such, I think the call to hasAttachedBody() should be replaced with getFrameTransform().
hasAttachedBody()
getFrameTransform()
Humble
Ubuntu 22.04
Binary
2.5.5
N/A
None
The call should recognise that the tip is a subframe, return true, and set the robot state accordingly. This is consistent with ROS1 behaviour.
The code prints an error "The following Pose Frame does not exist: ", and returns false.
No response
The text was updated successfully, but these errors were encountered:
Successfully merging a pull request may close this issue.
Description
RobotState::setFromIK()
returns false when thetip
frame passed is a subframe.This is due to the method only checking if the frame is the name of an attached body.
This is in contrast to the ROS1 code, which calls
getRigidlyConnectedParentLinkModel()
, which is subframe aware.The code is a bit different in ROS2, however,
RobotState
already has a method for looking up frames with subframe awareness.As such, I think the call to
hasAttachedBody()
should be replaced withgetFrameTransform()
.ROS Distro
Humble
OS and version
Ubuntu 22.04
Source or binary build?
Binary
If binary, which release version?
2.5.5
If source, which branch?
N/A
Which RMW are you using?
None
Steps to Reproduce
RobotState::setFromIK()
where thetip
parameter is a subframeExpected behavior
The call should recognise that the tip is a subframe, return true, and set the robot state accordingly. This is consistent with ROS1 behaviour.
Actual behavior
The code prints an error "The following Pose Frame does not exist: ", and returns false.
Backtrace or Console output
No response
The text was updated successfully, but these errors were encountered: