When constructing a MultiBodyPlant
from multiple ModelInstances
each loaded from a separate URDF, is there a way to define collision filter groups to exclude collisions across model instances? In the multibody URDF parser, loading collision filter groups is restricted to the those present in the same model instance.
What I would like to do is in URDF A specify:
<drake:collision_filter_group name="model_a_group">
<drake:member link="link1"/>
<drake:member link="link2"/>
<drake:ignored_collision_filter_group name="model_b_group"/>
</drake:collision_filter_group>
and in URDF B specify:
<drake:collision_filter_group name="model_b_group">
<drake:member link="link4"/>
<drake:member link="link5"/>
<drake:ignored_collision_filter_group name="model_a_group"/>
</drake:collision_filter_group>
But currently attempting to do this results in the following error:
abort: Failure at multibody/parsing/detail_urdf_parser.cc:238 in abort:
Failure at multibody/parsing/detail_urdf_parser.cc:238 in ParseCollisionFilterGroup():
condition 'collision_filter_group_b != collision_filter_groups.end()' failed.