Abstract
Path planners are widely used in many different fields to determine a sequence of valid configurations for an object, such as a robot arm, between a start configuration and a goal configuration, where a valid configuration must be a collision-free one. However, sometimes configurations that are in collision should be valid. For example, during spot welding, the two electrodes of a spot welding gun fuse metal sheets together by applying an electrical current to melt the metal at the point of contact and penetrate into the metal sheets. Even though the distance between the electrodes and the metal sheets is zero, the corresponding configuration of the spot welding gun should still be considered to be valid by the path planner. Another example might be: during grasp planning, a hand should be allowed to touch a table top while picking up an item on the table. To ensure non-zero distances at contact points, we propose in this paper a novel method to efficiently compute the distances between a given geometry represented by points, line segments, or triangles and the geometry remaining after Boolean subtracting multiple convex bodies placed at the contact points from another geometry. By performing the subtraction operations during the query phase, the remaining geometry after subtraction is never explicitly constructed, creating a more flexible simulation environment that is easier to maintain and update during the development process.