[ODE] dCylinder with new collision detection system
Olivier Michel
Olivier.Michel at cyberbotics.com
Wed Jan 22 09:17:01 2003
slipch wrote:
>Wednesday, January 22, 2003, 4:42:31 PM, you wrote:
>
>.....................................
>
>
>>>Currently I use a trick which allows to set contact points near the
>>>place it should be.
>>>
>>>
>>>
>OM> Ok, I am just facing this problem. Two cylinders are interpenetrating
>OM> each other, collision is detected too late...
>
>This can happen due to above mentioned problem only in the case of
>cylinder edge - cylinder edge collision i.e. when rings on cylinders
>edges touches.
>
This happens with two parallel cylinders (having parallel axis).
>Any geometries can interpenetrate also due to CFM, ERP settings.
>
Sure, but I noticed a big difference between Cyl - Box (or Cyl - Ray)
and Cyl - Cyl : Cyl - Cyl interpenetrate much more than Cyl - Box (or
Cyl - Ray). So, I suspect that the Cyl - Cyl collision detection doesn't
work as expected... It seems the cylinder radius used for collision
detection is significantly smaller than the actual one (actually
displayed)...
>OM> It's a bit annoying. Do you have some schedule to fix this issue ? If
>OM> not, could you give me more details about this mean points technique you
>OM> are thinking about ? I am not sure I could help doing this, but I may try...
>
>It is a simple idea for problem case. I this case the ring on one
>cylinder edge cross both lateral surface of the other cylinder and its
>flat circle edge each in one point (and vice versa). The idea - find
>both points and mean point between them that lying on the ring MP1.
>Doing the same thing for other cylinder we have two points MP1, MP2.
>Vector MP2-MP1 may be used as contact normal its magnitude as
>penetration depth and point (MP1+MP2)/2 as contact position.
>Case of cylinders separation must also be carefully regarded.
>
I don't think the problem I faced was corresponding to this case (since
Cylinders were parallel to each other).
-Olivier