IP Library Granted Patent US 8,456,484
Granted Patent B2
US 8,456,484 · App. 13/465,507 · Granted Jun 4, 2013

Apparatus and methods for wrapping texture onto the surface of a virtual object

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,456,484
App. No.
13/465,507
Granted
Jun 4, 2013
Kind
B2
Abstract

The invention provides techniques for wrapping a two-dimensional texture conformally onto a surface of a three dimensional virtual object within an arbitrarily-shaped, user-defined region. The techniques provide minimum distortion and allow interactive manipulation of the mapped texture. The techniques feature an energy minimization scheme in which distances between points on the surface of the three-dimensional virtual object serve as set lengths for springs connecting points of a planar mesh. The planar mesh is adjusted to minimize spring energy, and then used to define a patch upon which a two-dimensional texture is superimposed. Points on the surface of the virtual object are then mapped to corresponding points of the texture. The invention also features a haptic/graphical user interface element that allows a user to interactively and intuitively adjust texture mapped within the arbitrary, user-defined region.

Claims (45)

1. A non-transitory computer-readable medium, wherein the computer-readable medium stores instructions that, when executed by a processor, cause the processor to:

identify an arbitrarily-shaped user-defined region of a surface of a three-dimensional virtual object, wherein a boundary of the user-defined region includes one or more curved sections;

for each location of a plurality of locations within the user-defined region:

map the respective location to a corresponding location in a texture, and

assign to the respective location a graphical value associated with the corresponding location; and

provide, for graphical rendering in a display area of a user device, information comprising at least a portion of the three-dimensional virtual object, wherein

the portion of the three-dimensional virtual object comprises the user-defined region, and

the portion of the three-dimensional virtual object has the texture applied thereon.

2. The computer-readable medium of claim 1 , wherein the instructions, when executed, further cause the processor to:

receive, from the user device, a first user input corresponding to a user interaction with the surface of the three-dimensional virtual object;

receive, from the user device, a second user input corresponding to a second user interaction with the surface of the three-dimensional virtual object;

responsive to receiving the second user input,

provide, for rendering to the display area, updated information comprising the portion of the three-dimensional virtual object with an adjusted texture mapping.

3. The computer-readable medium of claim 2 , wherein the first user input identifies a first location of the plurality of locations.

4. The computer-readable medium of claim 3 , wherein the first user input identifies at least one of (a) a translation of the texture, (b) a rotation of the texture, and (c) a scaling of the texture.

5. The computer-readable medium of claim 4 , wherein:

the second user input identifies a second location of the plurality of locations; and

the instructions, when executed, further cause the processor to, responsive to the second user input:

provide, to the user device, haptic information to cause haptic feedback to a user input device of the user device based at least in part upon a position of the second location relative to the first location.

6. The computer-readable medium of claim 5 , wherein:

the first user input identifies the rotation of the texture; and

the user is haptically constrained to a circle, wherein a region of the circle is defined relative to the first location.

7. The computer-readable medium of claim 5 , wherein:

The first user input identifies the translation of the texture; and

the second user input corresponds to a dragging gesture.

8. The computer-readable medium of claim 7 , wherein the instructions, when executed, further cause the processor to:

receive, from the user device, a third user input identifying a third location of the plurality of locations, wherein the third user input corresponds to a release gesture; and

responsive to the release gesture, update a volumetric representation of the three-dimensional virtual object to reflect the texture adjustment.

9. The computer-readable medium of claim 8 , wherein updating the volumetric representation of the three-dimensional virtual object comprises applying a translation matrix to map the texture to the volumetric representation of the three-dimensional virtual object.

10. The computer-readable medium of claim 4 , wherein the texture is an image.

11. The computer-readable medium of claim 2 , wherein the first user input identifies a normal to the surface of the three-dimensional object at the first location.

12. The computer-readable medium of claim 11 , wherein the three-dimensional virtual object is represented in a first coordinate space and the two-dimensional texture is represented in a second coordinate space.

13. The computer-readable medium of claim 1 , wherein the user device comprises the processor.

14. The computer-readable medium of claim 1 , wherein the graphic value comprises a color value.

15. The computer-readable medium of claim 1 , wherein the texture is a two-dimensional texture.

16. A system comprising:

a processor; and

a memory comprising instructions, wherein the instructions, when executed by the processor, cause the processor to:

identify an arbitrarily-shaped user-defined region of a surface of a three-dimensional virtual object, wherein a boundary of the user-defined region includes one or more curved sections;

for each location of a plurality of locations within the user-defined region:

map the respective location to a corresponding location in a texture, and

assign to the respective location a graphical value associated with the corresponding location; and

provide, for graphical rendering in a display area of a user device, information comprising at least a portion of the three-dimensional virtual object, wherein

the portion of the three-dimensional virtual object comprises the user-defined region, and

the portion of the three-dimensional virtual object has the texture applied thereon.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2025
From: 3D SYSTEMS CORPORATION; 3D SYSTEMS, INC.
To: HEXAGON MANUFACTURING INTELLIGENCE, INC.
Reel/Frame 072448/0979 →
RELEASE OF SECURITY INTEREST Recorded Aug 26, 2021
From: HSBC BANK USA, NATIONAL ASSOCIATION
To: 3D SYSTEMS, INC.
Reel/Frame 057651/0374 →
SECURITY INTEREST Recorded Feb 27, 2019
From: 3D SYSTEMS, INC.
To: HSBC BANK USA, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 048456/0017 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2013
From: GEOMAGIC, INC.
To: 3D SYSTEMS, INC.
Reel/Frame 029971/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2012
From: BERGER, TORSTEN; CHEN, ELAINE; SHANNON, WALTER C.
To: SENSABLE TECHNOLOGIES, INC.
Reel/Frame 029375/0197 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2012
From: SENSABLE TECHNOLOGIES, INC.
To: GEOMAGIC, INC.
Reel/Frame 029375/0355 →