Use the "group_name" for Bullet collision checks
Parse links in the CollisionRequest group_name and disable other links during the collision check. We are hoping to use this to speed up collision checking. I've tested this extensively with the tutorial but will work on adding unit tests.
The gif shows the result of enabling collisions for the hand group only. All collisions with the hand are detected (pink dots) but collisions between the cube and the robot body aren't. Looks good to me.

Codecov Report
Merging #2502 (74b3e30) into master (0e59113) will increase coverage by
0.01%. The diff coverage isn/a.
@@ Coverage Diff @@
## master #2502 +/- ##
==========================================
+ Coverage 60.26% 60.26% +0.01%
==========================================
Files 351 351
Lines 26476 26476
==========================================
+ Hits 15952 15953 +1
+ Misses 10524 10523 -1
| Impacted Files | Coverage Δ | |
|---|---|---|
| ...ipulation/pick_place/src/manipulation_pipeline.cpp | 73.41% <0.00%> (+1.07%) |
:arrow_up: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact),ø = not affected,? = missing dataPowered by Codecov. Last update 0e59113...34af2c2. Read the comment docs.
I'm not 120% sure but doesn't the group_name imply to include all leaves/sub branches/stuff attached to that group?
And it's great you're giving the bullet collision checker some love!
good point, i'll test whether this works for attached objects
I was actually also concerned about the gripper/end_effector which with fcl is included when you set group_name to that of your robot/manipulator even though it is not in said group but only an appendix to that group
I was actually also concerned about the gripper/end_effector which with fcl is included when you set
group_nameto that of your robot/manipulatoreven though it is not in said group but only an appendix to that group
To me, that seems like unexpected behavior on the FCL side. I'd prefer it only checked the specified group.
I find that attached collision object detection does not work for this PR. But, it doesn't work for Bullet on master branch, either.