Closed weshoke closed 2 years ago
@sherm1 I'm happy to make an issue. I don't have the cycles at this point to go further and try to address it properly. I was testing out FCL to see if it could be used in a 5-Axis CNC simulation. Unfortunately I found too many issues where it was missing collisions that I moved on to other solutions. In general, I found the mesh collision routines to be quite buggy. This was the simplest case, but when looking at screw motions, I found similar results. That code was too complicated for me to dig into though.
Please don't take the above as me knocking FCL. I like the project, but it's not something I found was robust enough for my use case. It seemed like non-mesh collisions were more correct and not as much effort had gone in to testing the mesh capabilities.
Here's the above as an issue https://github.com/flexible-collision-library/fcl/issues/555
Great, thanks Wesley. Knocking FCL is fine with me -- we do it all the time! It has had many robustness issues. We've been repairing the ones we need for our own work but that is only a subset of FCL functionality. It's not surprising to hear there are problems in areas we haven't touched.
Two boxes translated towards each other fail
continuousCollide
. When the bounds inMeshConservativeAdvancementTraversalNode<BV>::leafTesting is computed
, the bounds values are signed. When summed together, they can offset leaving the value forcur_delta_t
incorrect.If their absolute values are summed, the test case below succeeds.
Master output:
This branch's output:
This change is![Reviewable](https://reviewable.io/review_button.svg)