Patent US6552722B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6552722B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Systems and methods for sculpting virtual objects in a haptic virtual reality environment

Assignee: 3D Systems Inc
•
Filing: 1999-07-06
•
Granted: 2003-04-22
•
Expires: 2019-07-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A user of a virtual object or computer model uses a haptic interface device in the real world to manipulate a virtual tool in a virtual environment to interact and modify the virtual object. The user uses the virtual tool in a sculpting mode to modify the shape of the virtual object by adding, removing, or modifying the material of the object. The user feels an interaction force from the virtual tool as it interacts with and modifies the virtual object. The designer can set geometric constraints, such as a constraint point, constraint line, or constraint surface, to limit or guide the movement of the virtual tool.

Inventors

  • 👤 Loren Shih
  • 👤 Walter A. Aviles
  • 👤 Thomas H. Massie
  • 👤 Walter C. Shannon, III

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 18:12
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/01; G06F3/016; B; B33; B33Y; B33Y80/00; G06F3/017; G06F3/03; G06F3/033; G06F3/0346; G06F3/0354; G06F3/03545; G06F3/038; G06T; G06T19/00; G06T19/20; G06F2203/00; G06F2203/01; G06F2203/013; G06T2200/00; G06T2200/24; G06T2210/00; G06T2210/28; G06T2219/00; G06T2219/20; G06T2219/2021

Claims Analysis

Total Claims: 38
Claim 1
Independent Claim 158 words
A method for modifying a voxel-based 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 that modifies a voxel value representative of the voxel-based virtual object; 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 voxel-based virtual object; calculating an interaction force between the virtual tool and the voxel-based virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the voxel-based virtual object; producing a modified voxel-based virtual object by modifying the voxel-based virtual object based on the modification mode, the locations of the plurality of discrete points of the virtual tool, and the location of the voxel-based virtual object; and outputting the modified voxel-based virtual object.
Claim 2
Independent Claim 158 words
A method for modifying a voxel-based 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 that modifies a voxel value representative of the voxel-based virtual object; 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 voxel-based virtual object; calculating an interaction force between the virtual tool and the voxel-based virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the voxel-based virtual object; producing a modified voxel-based virtual object by modifying the voxel-based virtual object based on the modification mode, the locations of the plurality of discrete points of the virtual tool, and the location of the voxel-based virtual object; and outputting the modified voxel-based virtual object.
Claim 3
Dependent Claim 51 words
The method of claim 1 , further comprising the steps of determining a virtual surface for the voxel-based 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 voxel-based virtual object.
Claim 4
Dependent Claim 24 words
The method of claim 2 , wherein the step of determining the virtual surface comprises determining a virtual isosurface for the voxel-based virtual object.
Claim 5
Dependent Claim 15 words
The method of claim 1 , wherein the voxel-based virtual object is a volumetric representation.
Claim 6
Dependent Claim 15 words
The method of claim 4 , wherein the volumetric representation comprises voxels comprising density values.
Claim 7
Dependent Claim 39 words
The method of claim 1 , wherein the step of selecting a modification mode comprises selecting at least one of a material removal mode, a material addition mode, a smoothing mode, a mirroring mode, and a 3-D sketch mode.
Claim 8
Dependent Claim 24 words
The method of claim 1 , further comprising the step of determining at least one virtual constraint for the movement of the virtual tool.
Claim 9
Dependent Claim 42 words
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.
Claim 10
Dependent Claim 17 words
The method of claim 1 , further comprising the step of exporting the modified voxel-based virtual object.
Claim 11
Independent Claim 197 words
A system for modifying a voxel-based 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 that modifies a voxel value representative of the voxel-based virtual object; a haptic interface device, wherein the haptic interface device senses a location of the user in real space; and a modeling application in communication with the haptic interface device, the voxel-based 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 voxel-based virtual object; calculates an interaction force between the virtual tool and the voxel-based virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the voxel-based virtual object; produces a modified voxel-based virtual object by modifying the voxel-based virtual object based on the modification mode, the locations of the plurality of discrete points of the virtual tool, and the location of the voxel-based virtual object; and outputs the modified voxel-based virtual object.
Claim 12
Independent Claim 197 words
A system for modifying a voxel-based 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 that modifies a voxel value representative of the voxel-based virtual object; a haptic interface device, wherein the haptic interface device senses a location of the user in real space; and a modeling application in communication with the haptic interface device, the voxel-based 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 voxel-based virtual object; calculates an interaction force between the virtual tool and the voxel-based virtual object based on the locations of the plurality of discrete points of the virtual tool and the location of the voxel-based virtual object; produces a modified voxel-based virtual object by modifying the voxel-based virtual object based on the modification mode, the locations of the plurality of discrete points of the virtual tool, and the location of the voxel-based virtual object; and outputs the modified voxel-based virtual object.
Claim 13
Dependent Claim 64 words
The system of claim 10 , further comprising the voxel-based 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 voxel-based virtual object.
Claim 14
Dependent Claim 19 words
The system of claim 11 , wherein the virtual surface of the voxel-based virtual object is a virtual isosurface.
Claim 15
Dependent Claim 15 words
The system of claim 10 , wherein the voxel-based virtual object is a volumetric representation.
Claim 16
Dependent Claim 15 words
The system of claim 13 , wherein the volumetric representation comprises voxels comprising density values.
Claim 17
Dependent Claim 34 words
The system of claim 10 , wherein the modification mode is a selected one of a material removal mode, a material addition mode, a smoothing mode, a mirroring mode, and a 3-D sketch mode.
Claim 18
Dependent Claim 22 words
The system of claim 10 , wherein the user determines at least one virtual constraint for a movement of the virtual tool.
Claim 19
Dependent Claim 31 words
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.
Claim 20
Dependent Claim 16 words
The system of claim 10 , wherein the modeling application exports the modified voxel-based virtual object.
Claim 21
Independent Claim 142 words
A method for interfacing with a voxel-based virtual object in a haptic virtual environment, comprising: generating a voxel-based 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.
Claim 22
Independent Claim 142 words
A method for interfacing with a voxel-based virtual object in a haptic virtual environment, comprising: generating a voxel-based 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.
Claim 23
Dependent Claim 29 words
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.
Claim 24
Dependent Claim 33 words
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.
Claim 25
Dependent Claim 24 words
The method of claim 19 , further comprising the step of modifying the voxel-based virtual object based on the position of the virtual tool.
Claim 26
Dependent Claim 37 words
The method of claim 19 , further comprising calculating an interaction force among the constraint geometry, the voxel-based virtual object, and the virtual tool in response to the step of determining the position of the virtual tool.
Claim 27
Dependent Claim 45 words
The method of claim 19 , further comprising the steps of selecting a modification mode that modifies a voxel value representative of the voxel-based virtual object, and modifying the voxel-based virtual object in response to the modification mode and the position of the virtual tool.
Claim 28
Dependent Claim 25 words
The method of claim 19 , wherein the step of constraining the action of the virtual tool comprises constraining the translation of the virtual tool.
Claim 29
Dependent Claim 25 words
The method of claim 19 , wherein the step of constraining the action of the virtual tool comprises constraining the rotation of the virtual tool.
Claim 30
Independent Claim 176 words
A system for interfacing with a voxel-based virtual object in a haptic virtual environment, the system comprising: a voxel-based 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 voxel-based 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.
Claim 31
Independent Claim 176 words
A system for interfacing with a voxel-based virtual object in a haptic virtual environment, the system comprising: a voxel-based 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 voxel-based 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.
Claim 32
Dependent Claim 24 words
The system of claim 27 , wherein the constraint geometry is at least one of a constraint point, constraint curve, and a constraint surface.
Claim 33
Dependent Claim 32 words
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.
Claim 34
Dependent Claim 23 words
The system of claim 27 , wherein the modeling application modifies the voxel-based virtual object based on the position of the virtual tool.
Claim 35
Dependent Claim 36 words
The system of claim 27 , wherein the modeling application calculates an interaction force among the constraint geometry, the voxel-based virtual object, and the virtual tool in response to determining the position of the virtual tool.
Claim 36
Dependent Claim 44 words
The system of claim 27 , further comprising a modification mode that modifies a voxel value representative of the voxel-based virtual object, and the modeling application modifies the voxel-based virtual object in response to the modification mode and the position of the virtual tool.
Claim 37
Dependent Claim 20 words
The system of claim 27 , wherein the action of the virtual tool comprises a translation of the virtual tool.
Claim 38
Dependent Claim 20 words
The system of claim 27 , wherein the action of the virtual tool comprises a rotation of the virtual tool.

References Cited (Backward Citations)

US2475484A Cited
US3168203A Cited
US3263824A Cited
US3449008A Cited
US3531868A Cited
US3618786A Cited
US3637092A Cited
US3944798A Cited
US3920972A Cited
US4062455A Cited
US4150803A Cited
US4216467A Cited
US4302138A Cited
US4367532A Cited
US4420808A Cited
US4638798A Cited
US4521685A Cited
US4655673A Cited
US4604016A Cited
US4670851A Cited
US4703443A Cited
US4676002A Cited
US4653011A Cited
US4654648A Cited
US4661032A Cited
US4632341A Cited
US4729098A Cited
US4769763A Cited
US4680519A Cited
US5103404A Cited
US4973215A Cited
US4837734A Cited
US4888538A Cited
US4791934A Cited
US4945305A Cited
US4795296A Cited
US4853874A Cited
US4819195A Cited
US4945501A Cited
US4800721A Cited
US4988981B1 Cited
US4988981A Cited
US4893981A Cited
US5018922A Cited
US4839838A Cited
US4961138A Cited
US4823634A Cited
US5088046A Cited
US4942538A Cited
US4982504A Cited
US5040306A Cited
US5038089A Cited
US4907970A Cited
US5053975A Cited
US5116180A Cited
US5105367A Cited
US4907973A Cited
US5189806A Cited
US5116051A Cited
US5044956A Cited
US5019761A Cited
US5088055A Cited
US5007300A Cited
US5004391A Cited
US5204824A Cited
US5130632A Cited
US5072361A Cited
US5184319A Cited
US5255211A Cited
US5396265A Cited
US5193963A Cited
US5223776A Cited
US5142931A Cited
US5143505A Cited
US5354162A Cited
US5497452A Cited
US5131844A Cited
US5266875A Cited
US5185561A Cited
US5559412A Cited
US5414337A Cited
US5220260A Cited
US5889670A Cited
US5515078A Cited
US5239246A Cited
US5751289A Cited
US5264768A Cited
US5790108A Cited
US5831408A Cited
US5629594A Cited
US5459382B1 Cited
US5389865A Cited
US5459382A Cited
US5769640A Cited
US5844392A Cited
US5555894A Cited
US5429140A Cited
US5805140A Cited
US5739811A Cited
US5880714A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-04-21 2006-10-21 2007-04-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-04-21 2010-10-21 2011-04-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-04-21 2014-10-21 2015-04-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag