Claims
- 1. A method for modifying a virtual object in a haptic virtual environment, comprising:
determining a virtual tool comprising a plurality of discrete points for use by the user in the haptic virtual environment; selecting a modification mode for the virtual tool; sensing a location of a user in real space; determining locations of the plurality of discrete points of the virtual tool relative to a location of the virtual object; calculating an interaction force between the virtual tool and the virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the virtual object; producing a modified virtual object by modifying the virtual object based on the modification mode, the locations of the plurality of discrete points of the virtual tool, and the location of the virtual object; and outputting the modified virtual object.
- 2. The method of claim 1, further comprising the steps of
determining a virtual surface for the virtual object; and determining a position and an orientation of the virtual tool by determining the locations of the plurality of discrete points relative to the virtual surface of the virtual object.
- 3. The method of claim 2, wherein the step of determining the virtual surface comprises determining a virtual isosurface for the virtual object.
- 4. The method of claim 1, wherein the virtual object is a volumetric representation.
- 5. The method of claim 4, wherein the volumetric representation comprises voxels comprising density values.
- 6. The method of claim 1, wherein the step of selecting a modification mode for the virtual tool comprises selecting one of a material removal, a material addition, and a material modification mode.
- 7. The method of claim 1, further comprising the step of determining at least one virtual constraint for the movement of the virtual tool.
- 8. The method of claim 7, wherein the step of determining at least one virtual constraint for the movement of the virtual tool comprises determining at least one of a point, curve and surface constraint for the movement of the virtual tool.
- 9. The method of claim 1, further comprising the step of exporting the modified virtual object.
- 10. A system for modifying a virtual object by a user in a haptic virtual environment, the system comprising:
a virtual tool comprising a plurality of discrete points for use by the user in the haptic virtual environment, wherein the user selects a modification mode for the virtual tool; a haptic interface device, wherein the haptic interface device senses a location of the user in real space; a modeling application in communication with the haptic interface device, the virtual object, and the virtual tool, wherein the modeling application determines locations of the plurality of discrete points of the virtual tool relative to a location of the virtual object; calculates an interaction force between the virtual tool and the virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the virtual object; produces a modified virtual object by modifying the virtual object based on the modification mode; the locations of the plurality of discrete points of the virtual tool, and the location of the virtual object; and outputs the modified virtual object.
- 11. The system of claim 10, further comprising
the virtual object comprising a virtual surface; and the virtual tool comprising a position and an orientation, wherein the modeling application determines the position of the virtual tool and the orientation of the virtual tool by determining the locations of the plurality of discrete points relative to the virtual surface of the virtual object.
- 12. The system of claim 11, wherein the virtual surface of the virtual object is a virtual isosurface.
- 13. The system of claim 10, wherein the virtual object is a volumetric representation.
- 14. The system of claim 13, wherein the volumetric representation comprises voxels comprising density values.
- 15. The system of claim 10, wherein the modification mode is a selected one of a material removal, a material addition, and a material modification mode.
- 16. The system of claim 10, wherein the user determines at least one virtual constraint for a movement of the virtual tool.
- 17. The system of claim 16, wherein the at least one virtual constraint for the movement of the virtual tool is at least one of a point, curve and surface constraint.
- 18. The system of claim 10, wherein the modeling application exports the modified virtual object.
- 19. A method for interfacing with a virtual object in a haptic virtual environment, comprising:
generating a virtual object comprising a virtual surface in the haptic virtual environment; setting a constraint geometry in the haptic virtual environment; determining a virtual tool for use by the user in the haptic virtual environment; sensing a location of a user in real space; determining a haptic interface location in the haptic virtual environment in response to the location of the user in real space; determining a position of the virtual tool in the haptic virtual environment in comparison to the haptic interface location and the location of the virtual surface and the constraint geometry; constraining an action of the virtual tool based on (i) the constraint geometry, (ii) the virtual surface, (iii) the position of the virtual tool, and (iv) the haptic interface location.
- 20. The method of claim 19, wherein the step of setting a constraint geometry comprises setting at least one of a constraint point, constraint curve, and a constraint surface.
- 21. The method of claim 19, wherein the step of determining the position of the virtual tool further comprises moving the position of the virtual tool to coincide with the haptic interface location.
- 22. The method of claim 19, further comprising the step of modifying the virtual object based on the position of the virtual tool.
- 23. The method of claim 19, further comprising calculating an interaction force among the constraint geometry, the virtual object, and the virtual tool in response to the step of determining the position of the virtual tool.
- 24. The method of claim 19, further comprising the steps of selecting a modification mode for the virtual tool, and modifying the virtual object in response to the modification mode and the position of the virtual tool.
- 25. The method of claim 19, wherein the step of constraining the action of the virtual tool comprises constraining the translation of the virtual tool.
- 26. The method of claim 19, wherein the step of constraining the action of the virtual tool comprises constraining the rotation of the virtual tool.
- 27. A system for interfacing with a virtual object in a haptic virtual environment, the system comprising:
the virtual object comprising a virtual surface; a virtual tool for use by the user in the haptic virtual environment; a constraint geometry limiting the movement of the virtual tool in the haptic virtual environment; a haptic interface device, wherein the haptic interface device senses a position of the user in real space; a modeling application in communication with the haptic interface device, the virtual object, and the virtual tool, wherein the modeling application determines a haptic interface location in the haptic virtual environment in response to the location of the user in real space; determines a position of the virtual tool in the haptic virtual environment in comparison to the haptic interface location, and the location of the virtual surface and the constraint geometry; and constraining an action of the virtual tool based on (i) the constraint geometry, (ii) the virtual surface, and (iii) the position of the virtual tool, and (iv) the haptic interface location.
- 28. The system of claim 27, wherein the constraint geometry is at least one of a constraint point, constraint curve, and a constraint surface.
- 29. The system of claim 27, wherein the modeling application determines the position of the virtual tool by moving the position of the virtual tool to coincide with the haptic interface location.
- 30. The system of claim 27, wherein the modeling application modifies the virtual object based on the position of the virtual tool.
- 31. The system of claim 27, wherein the modeling application calculates an interaction force among the constraint geometry, the virtual object, and the virtual tool in response to determining the position of the virtual tool.
- 32. The system of claim 27, further comprising a modification mode for the virtual tool selected by the user, and the modeling application modifies the virtual object in response to the modification mode and the position of the virtual tool.
- 33. The system of claim 27, wherein the action of the virtual tool comprises a translation of the virtual tool.
- 34. The system of claim 27, wherein the action of the virtual tool comprises a rotation of the virtual tool.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is continuation-in-part of a U.S. patent application Ser. No. (not yet assigned) filed Jun. 28, 1999, entitled “Systems and Methods for Interacting with Virtual Objects in a Haptic Virtual Environment,” and is based on and claims priority to U.S. Provisional Patent Application Serial No. 60/093,304, filed Jul. 17, 1998, entitled “Method and Apparatus for Sculpting Virtual Objects in a Haptic Virtual Reality Environment,” the entire contents of which are incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60093304 |
Jul 1998 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09347637 |
Jul 1999 |
US |
Child |
10375517 |
Feb 2003 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09340875 |
Jun 1999 |
US |
Child |
09347637 |
Jul 1999 |
US |