[ODE] get triangle index of a trimesh - applied to trunk

Ettore Pancini ekt at libero.it
Mon May 1 07:59:54 MST 2006


just wanted to say that i've just tested it and it works nicely!
i can now remove my weak implementation with dGeomTriMeshSetCallback :)
thanks!


----- Original Message ----- 
From: "Jaroslav Sinecky" <sinecky at telefonica.net>
To: "Geoff Carlton" <gcarlton at iinet.net.au>
Cc: "Ettore Pancini" <ekt at libero.it>; "ODE mailing_list" <ode at q12.org>
Sent: Tuesday, April 25, 2006 12:20
Subject: Re: [ODE] get triangle index of a trimesh - applied to trunk


> So, for the moment, I changed my implementation to use new Side1,Side2 
> fields in dContactGeom (as suggested by Geoff) and applied it to svn 
> trunk.
>
> What is implemented now:
> trimesh triangle index when colliding with sphere, box, capsule, cylinder.
>
> In other cases I don't set the Side1, Side2 fields to -1, so they will 
> contain undefined value. You can fill your Side1,Side2 fields with -1 
> before calling dCollide to be sure if it was set or not.
>
> Cheers,
> Jaroslav
>
> Geoff Carlton wrote:
>> Hi,
>> I have the full code containing the change, as well as several other 
>> changes.  In terms of extracting that one feature out into a separate 
>> patch that can be applied to SVN, I did say I would try to do that when I 
>> had more time.  Unfortunately, if anything, my free time is going the 
>> other way.  For now, I can offer the complete source (which you may have 
>> trouble merging), or you will still have to wait an indeterminate time 
>> until I get around to it.
>>
>> Sorry about that,
>> Geoff
>>
>>
>> Jaroslav Sinecky wrote:
>>> It didn't get it over to the maillist, I guess it's still waiting for 
>>> approval, because it exceeded size of 10kB, or something like that. I 
>>> didn't bother because there was a better proposal - adding feedback 
>>> field in the contact struct and Geoff Carlton was going to send a patch 
>>> for that, which didn't happen yet.
>>> Nevermind, I can change my code to store the index in feedback field, 
>>> which is really minor change and apply it to svn.
>>> Or Geoff, will you send your code?
>>>
>>> Ettore Pancini wrote:
>>>
>>>> quite strangely i can't find the original mail from Sinecky Jaroslav
>>>> neither in the archives nor in my inbox. someone has this patch?
>>>>
>>>>     ----- Original Message -----
>>>>     *From:* vicente conejeros <mailto:vicenteconejeros at hotmail.com>
>>>>     *To:* ODE mailing_list <mailto:ode at q12.org>
>>>>     *Sent:* Friday, March 10, 2006 21:05
>>>>     *Subject:* Re: [ODE] get triangle index of a trimesh
>>>>
>>>>     thanks :D
>>>>
>>>>         ----- Original Message -----
>>>>         *From:* Jaroslav Sinecky <mailto:sinecky at telefonica.net>
>>>>         *To:* adastra at inorbit.com <mailto:adastra at inorbit.com> ;
>>>>         vicente conejeros <mailto:vicenteconejeros at hotmail.com>
>>>>         *Cc:* ODE mailing_list <mailto:ode at q12.org>
>>>>         *Sent:* Friday, March 10, 2006 10:21 AM
>>>>         *Subject:* RE: [ODE] get triangle index of a trimesh
>>>>
>>>>         So here goes the patch, maybe someone finds it useful or you
>>>>         can include it in unstable. It's pretty simple: after dCollide
>>>>         returns, call
>>>>                  int triIndex = dGeomTriMeshGetTouchedTriangle(g1, 
>>>> contactIndex);
>>>>                  where contactIndex is the index in the list of 
>>>> returned
>>>>         contacts and g1 is the Trimesh geom involved in the collision.
>>>>                  disclaimer:
>>>>         - Not implemented for ray or plane colliding with trimesh.
>>>>         Suppose should be similarily easy to implement though.
>>>>         - There is static buffer (64) to hold indexes. I believe if
>>>>         this overflows, it shouldn't crash, just some asserts will
>>>>         come out.
>>>>         - It's not completely robust, for example if you send
>>>>         contactIndex not consistent with immediately preceding
>>>>         dCollide call, result is undefined
>>>>                  Performance impact should be negligible though.
>>>>                           Cheers,
>>>>         Jaroslav
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>>
>>>> _______________________________________________
>>>> 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