SceneGraphCollisionChecker refers to removed joint index after RemoveJoint() function has been called on the plant #21860
Labels
component: planning and control
Optimization-based planning and control, and search- and sampling-based planning
type: bug
What happened?
When working with
MultibodyPlant
, after callingplant.RemoveJoint()
method, the joint index is removed and not replaced (as expected). Thus, there would be a skip of integer number at the point where the removed joint's index was numerically assigned. When this plant (via itsRobotDiagram
) is then passed to theSceneGraphCollisionChecker
, the following error is given:RuntimeError: The JointIndex(26) has been removed
. Essentially,SceneGraphCollisionChecker
is not working on a plant for which joints have been removed and new joints/ welds have been added at the end, creating a discontinuity in the integer index of joints.Version
1.32.0
What operating system are you using?
Ubuntu 22.04
What installation option are you using?
pip install drake
Relevant log output
No response
The text was updated successfully, but these errors were encountered: