Menu

#55 GIMPACT collision trimesh box bug

open
nobody
None
5
2012-09-14
2008-03-01
No

The attached code file :
build a given trimesh (a complex one because its from a real example)
build a box
* check for intersections

-->these two does not intersect but collision is detected

Appearing on 0.8 and 0.9

Discussion

  • Mathieu Roger

    Mathieu Roger - 2008-03-01
     
  • Remi Ricard

    Remi Ricard - 2008-03-03

    Logged In: YES
    user_id=145206
    Originator: NO

    Hi Mathieu,

    I was looking at the code and it is hard to see if there should be a collision or not.

    The z values for the trimesh goes up to at least 76.5136 and the position of the box is z=42.

    Can you modify your code to make it display the trimesh and the box using drawstuff (see the demo).

    Remi

     
  • Mathieu Roger

    Mathieu Roger - 2008-03-03

    screenshot

     
  • Mathieu Roger

    Mathieu Roger - 2008-03-03

    Logged In: YES
    user_id=1245769
    Originator: YES

    File Added: objects.jpg

     
  • Mathieu Roger

    Mathieu Roger - 2008-03-03
     
  • Mathieu Roger

    Mathieu Roger - 2008-03-03

    Logged In: YES
    user_id=1245769
    Originator: YES

    Hi Remi,

    here you are (a modified version of demo_trimesh.cpp). I cannot find a way to print collision points. Hope it helps. As you can see, ship and box are quite far away.

    Regards

    Mathieu
    File Added: demo_trimesh.cpp

     
  • Mathieu Roger

    Mathieu Roger - 2010-12-03

    Yes the trimesh has identity orientation as you may see in the code previously attached (test-ode.txt, that is the test case, expressed in CppUnit to reproduce the issue).

    But I have just tried to set another orientation :

    dQuaternion orientation ;
    dQFromAxisAndAngle(orientation,1,1,1,0.2) ;
    dGeomSetQuaternion(TriMesh,orientation) ;

    which changes nothing at all and I still have the bug with that orientation. Maybe I am wrong in thinking that orientation is not axis aligned.

    By the way, I am now under version 0.11.1 (on a debian box) and I still reproduce the issue.

    It is easy to reproduce with the automatic test case I have provided, but as shown by svn history, no automatic test has been added for 3 years. I am sorry to be so rude, I love ODE and I am very grateful to all it's contributors, but I deeply believe that the first step to correct this bug is to automate it.
    If you need I could transform the attached code to the UnitTest format already present in ODE, which will take a few minutes, but I have no ability to correct that issue.

     

Log in to post a comment.