[ODE] Box/Trimesh contact filtering and oblong geoms

Rodrigo Hernandez kwizatz at aeongames.com
Wed Apr 27 11:44:08 MST 2005


Ok, I made the change there as well, and also noticed that a LOT of 
epsilons are hardcoded in that file, that's creepy :-\

Eric Froemling wrote:

>I just wanted to point out that the same little flawed bit of code
>exists in ode_collision_trimesh_trimesh.cpp in GenerateContact().
>
>Eric
>
>  
>
>>Ok, its taken care of :)
>>
>>Julien LOLLIVIER wrote:
>>
>>    
>>
>>>It seems you're right : with a test like "< FLT_EPSILON", all is
>>>      
>>>
>perfectly stable, and it filters more contacts than with "== 0". (gcc
>3.3.2, x86)
>  
>
>>>I've learned something new today, thanks ;)
>>>
>>>I think it's obvious, but since I'm using single precision, EPSILON
>>>      
>>>
>and DBL_EPSILON does not produce a correct behavior.
>  
>
>>>The same system is used for normals:
>>>if (fabs(dDOT(in_Normal, Contact->normal)) > 0.99) { ... }
>>>Correct formulation is something like "> ((dReal)1)-ODE_EPSILON" ?
>>>
>>>--
>>>Julien 'Xfennec' Lollivier,
>>>CQFD Corp. - Quiris
>>>http://raydium.cqfd-corp.org/
>>>
>>>On Tue, 26 Apr 2005 15:17:00 -0600
>>>Rodrigo Hernandez <kwizatz at aeongames.com> wrote:
>>>
>>> 
>>>
>>>      
>>>
>>>>That sounds like it should be changed to EPSILON, either FLT_EPSILON, 
>>>>DBL_EPISILON or an aproximation if float.h is not available.
>>>>There is no check for EPSILON on the configure script, but I could 
>>>>easily add it to autotools, could you try changing your test 0 for an 
>>>>EPSILON and see what happens then?
>>>>
>>>>Thanks.
>>>>
>>>>   
>>>>
>>>>        
>>>>
>>>_______________________________________________
>>>ODE mailing list
>>>ODE at q12.org
>>>http://q12.org/mailman/listinfo/ode
>>>
>>>
>>> 
>>>
>>>      
>>>
>>_______________________________________________
>>ODE mailing list
>>ODE at q12.org
>>http://q12.org/mailman/listinfo/ode
>>
>>
>>    
>>
>
>
>
>
>  
>



More information about the ODE mailing list