rdiankov / openrave

Open Robotics Automation Virtual Environment: An environment for testing, developing, and deploying robotics motion planning algorithms.
http://www.openrave.org
Other
684 stars 339 forks source link

Use convex hull as a fallback #1370

Closed Puttichai closed 2 months ago

Puttichai commented 3 months ago

Summary

This pull request adds a new safety measure to make sure that the padded mesh is safe to use.

The current library OpenRAVE uses for convex decomposition computation may, in some corner cases, output a list of convex hulls that do not entirely cover the original mesh vertices. To ensure safety, a check is added and if it turns out that the output hulls do not completely cover the original vertices, convex hull computation will be used instead.

The reason convex hull is not always used is that in many cases, the hull will be too big that when used for collision checking, it will give out too many false positives.

eisoku9618 commented 2 months ago

memo

Puttichai commented 2 months ago

@kanbouchou I notice there is this branch of yours https://github.com/rdiankov/openrave/tree/fix_convex_decomposition_thin_geometry

Do you still remember what kind of problems you encountered back then?

rdiankov commented 2 months ago

thanks~

kanbouchou commented 2 months ago

@kanbouchou I notice there is this branch of yours https://github.com/rdiankov/openrave/tree/fix_convex_decomposition_thin_geometry

Do you still remember what kind of problems you encountered back then?

I vaguely recall that I encountered a strange convex hull of a thin object and tried to fix it by this branch. However, I thought it is difficult to predict how this affects different shapes out there. So I think I ended up modifying some parameters for convex decomposition such as minTriangleConvexHullThresh and not pursuing fixing the convex hull decomposition code.