You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
gjk.shapeIntersect() == true naturally means there is a collision. This one should not be changed.
gjk.shapeDistance(distance) == true conventionally means distance > some_security_threshold. Personally, I find it natural that it returns true in this case (personal taste) and I don't see any objectively good reason to change this convention. (The behavior being different from shapeIntersect is clearly not strong enough for me).
If you want the same interface, you can add a method like shapeCollisionFree or shapePenetration (I don't advise the latter).
From the current code version, it appears that the methods
GJKSolver::shapeIntersect
:https://github.com/humanoid-path-planner/hpp-fcl/blob/ea9afdc2ee5771826a12a769a108368cd0c57212/include/hpp/fcl/narrowphase/narrowphase.h#L57-L61
and
GJKSolver::shapeDistance
:https://github.com/humanoid-path-planner/hpp-fcl/blob/ea9afdc2ee5771826a12a769a108368cd0c57212/include/hpp/fcl/narrowphase/narrowphase.h#L212-L216
returns opposite outputs when there are collisions.
Is it expected?
The text was updated successfully, but these errors were encountered: