System and method for providing interactive haptic collision detection
First Claim
1. A method for avoiding collisions between objects moving in virtual space, comprising:
- manipulating a movable object in virtual space in at least one direction of movement;
calculating the distance and direction between the manipulated movable object and another object in the virtual space;
providing haptic feedback as the calculated distance closes to a predetermined minimum value;
increasing the haptic feedback as the calculated distance diminishes from the predetermined minimum value; and
dividing the virtual space into cubes, delineated by lines along x, v, and z axes;
dividing the surface of the other object into polygons;
calculating the distance between the center of each cube and the nearest polygon on the surface of the other object; and
determining a direction vector from the center of each cube to the nearest polygon on the surface of the other object.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is directed toward providing interactive haptic collision detection between a stationary and a moving object in a virtual reality environment. A user grasps the arm of a haptic device and manipulates an object as viewed on a virtual reality display. As any portion of the manipulated object comes too close to the surface of the stationary object, the haptic device imposes feedback forces against the user'"'"'s efforts that increase in magnitude as the user manipulates the object beyond a force boundary proximate to the surface of the stationary object. The feedback forces are applied directionally in line with the shortest path between the surfaces at risk of collision. Several measures can be implemented by the user to reduce the computation load involved in constantly comparing the distances between points on the surface of the movable object and points on the surface of the stationary object without seriously compromising the collision detection and avoidance functions of the system. Furthermore, while the invention provides for up to six degrees of freedom for manipulating objects and providing haptic feedback, the system also accommodates three degrees of haptic freedom and feedback, with the additional three degrees of rotational feedback being provided visibly or audibly.
82 Citations
4 Claims
-
1. A method for avoiding collisions between objects moving in virtual space, comprising:
-
manipulating a movable object in virtual space in at least one direction of movement;
calculating the distance and direction between the manipulated movable object and another object in the virtual space;
providing haptic feedback as the calculated distance closes to a predetermined minimum value;
increasing the haptic feedback as the calculated distance diminishes from the predetermined minimum value; and
dividing the virtual space into cubes, delineated by lines along x, v, and z axes;
dividing the surface of the other object into polygons;
calculating the distance between the center of each cube and the nearest polygon on the surface of the other object; and
determining a direction vector from the center of each cube to the nearest polygon on the surface of the other object. - View Dependent Claims (2, 3, 4)
the distance from the center of a cube located within the other object;
the distance from the center of a cube located exterior to the other object;
ora designation indicating the center of a cube is located a far distance from the surface of the other object.
-
-
3. The method according to claim 1, wherein the haptic feedback is increased to a level that blocks manipulation of the movable object toward the other object as the movable object approaches a collision with the other object.
-
4. The method according to claim 1, further including the step of minimizing the calculating by implementing one or more of the following steps:
-
clipping off unnecessary portions of the other object in the virtual space;
aligning a rectangular bounding box encompassing the other object in a minimum volume for determining the distance and direction between the movable object and the other object;
ignoring those points within the bounding box that are not within a predetermined distance from the surface of the other object; and
skipping the distance and direction calculating for points on the movable object which are outside the predetermined minimum distance value from the other object.
-
Specification