CheckCollision and RemoveKinBody

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

CheckCollision and RemoveKinBody

Brennan Peter Sellner
Hi,

Experimentally, it appears that the effects of
EnvironmentBase::RemoveKinBody() are not completely instantaneous.  In
particular, we call RemoveKinBody() on a body, then shortly afterwards do
a series of ODE collision checks using EnvironmentBase::CheckCollision(),
within the same SimulationStep() call of our plugin.  The just-removed
body appears in the collision checks, but the OpenRAVE-side data appears
to have been deleted already (e.g. GetName() segfaults, and so on).  If
it's relevant, I'm using the ODE collision checker with CO_Distance as the
only option.

If I cache the KinBody*s being deleted and explicitly filter them out of
the collision checks during the current SimulationStep(), everything's
fine: they don't appear in collision checks in future simulation steps.

I'm running OpenRAVE r264 on Ubuntu 6.06 (Dapper Drake).

Thanks,

-Brennan


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CheckCollision and RemoveKinBody

Rosen Diankov-2
fixed in rev 265

rosen,

2008/7/17 Brennan Peter Sellner <[hidden email]>:

> Hi,
>
> Experimentally, it appears that the effects of
> EnvironmentBase::RemoveKinBody() are not completely instantaneous.  In
> particular, we call RemoveKinBody() on a body, then shortly afterwards do
> a series of ODE collision checks using EnvironmentBase::CheckCollision(),
> within the same SimulationStep() call of our plugin.  The just-removed
> body appears in the collision checks, but the OpenRAVE-side data appears
> to have been deleted already (e.g. GetName() segfaults, and so on).  If
> it's relevant, I'm using the ODE collision checker with CO_Distance as the
> only option.
>
> If I cache the KinBody*s being deleted and explicitly filter them out of
> the collision checks during the current SimulationStep(), everything's
> fine: they don't appear in collision checks in future simulation steps.
>
> I'm running OpenRAVE r264 on Ubuntu 6.06 (Dapper Drake).
>
> Thanks,
>
> -Brennan
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Openrave-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CheckCollision and RemoveKinBody

Brennan Peter Sellner
On Thu, 17 Jul 2008, Rosen Diankov wrote:
> fixed in rev 265

Thanks!  I can verify this fixed my problem.

-Brennan



Loading...