IP Library Granted Patent US 11,221,740
Granted Patent B2
US 11,221,740 · App. 15/919,092 · Granted Jan 11, 2022

Systems and methods for 3D scripting language for manipulation of existing 3D model data

Inventor: Alan D. Hudson (New York, NY)
Assignee: Shapeways, Inc.
G06F3/0484B29C64/00B29C64/393B33Y50/00B33Y50/02G06F3/04845G06F8/34G06F9/451G06F9/453G06F16/289G06F21/608G06F30/00G06Q20/18G07F17/26G07F17/266B41J2/17566G06F3/03545G06F3/04815G06F21/10G06Q30/02
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 11,221,740
App. No.
15/919,092
Granted
Jan 11, 2022
Kind
B2
Abstract

As three-dimensional (3D) printing and additive manufacturing becomes a way for individuals and companies to distribute physical goods, there is a growing need for creators of physical goods to enable customers to customize 3D printed objects while protecting core electronic assets in the form of the files used to define and print the objects. Server-side rendering of 3D object images provides an opportunity to protect 3D object files while offering performance advantages. A scripting language may be central to delivering a seamless user experience interacting with 3D object models on client devices. Object creators and vendors may rely on the scripting language to create user interfaces for selling customizable objects. And once the user interface is developed, it may provide the basis for users accessing, viewing, manipulating, selecting materials, rendering, pricing, and printing a range of 3D objects.

Claims (79)

1. A computer implemented method comprising acts of:

receiving, at a first server, from a first user a presentation interface and a computer representation of a three-dimensional object stored in a 3D printable object file comprising at least one script and a set of parameter values;

providing, by the first server, to a second user interacting with a display of a client computer in a distributed computer system, the presentation interface including a display interface configured to display an image relating to the computer representation of the three-dimensional object and a control interface configured to accept inputs capable of modifying the at least one script associated with the three-dimensional object, and wherein the computer representation of the three-dimensional object stored in the 3D printable object file comprising the at least one script and the set of parameter values is not provided to the second user;

receiving, at the first server, from the second user interacting with the presentation interface, a request for the image based on modifying the at least one script relating to the computer representation of the three-dimensional object, wherein the request includes an object identifier and at least one or more user inputs from the group comprising: parameter values, attributes, uniform resource identifiers, cache busting markers, material identifiers, and three-dimensional ray values, wherein the object identifier and the at least one or more user inputs are applied to the at least one script relating to the computer representation of the three-dimensional object;

requesting, from a second server in the distributed computer system, the image relating to the computer representation of the three-dimensional object, wherein the image is generated based on a modified at least one script relating to the computer representation of the three-dimensional object;

receiving the image from the second server; and

displaying, by the first server, the image within the presentation interface.

2. The method of claim 1 , wherein the 3D printable object file is different from the image.

3. The method of claim 2 , wherein the image comprises a rasterized two-dimensional file.

4. The method of claim 2 , wherein the image comprises a static three-dimensional file.

5. The method of claim 1 , further comprising acts of:

receiving, at the first server, from the second user interacting with the control interface, instructions to modify the at least one script associated with the computer representation of the three-dimensional object;

requesting, from the second server, responsive to the instructions, an updated image relating to the computer representation of the three-dimensional object, wherein the updated image reflects a modified computer representation of the three-dimensional object responsive to the modified at least one script;

receiving, from the second server, the updated image; and

displaying, by the first server, the updated image within the presentation interface.

6. The method of claim 1 , further comprising acts of:

receiving, at the first server, from the second user interacting with the control interface, instructions to modify the at least one script associated with the computer representation of the three-dimensional object;

identifying on the first server, an updated image relating to the computer representation of the three-dimensional object, wherein the updated image reflects a modified computer representation of the three-dimensional object responsive to the modified at least one script; and

displaying, by the first server, the updated image within the presentation interface.

7. The method of claim 1 , further comprising acts of:

receiving, from the second user, a request to render the computer representation of the three-dimensional object in a specific material;

requesting, from the second server, the image representing the rendering of the three-dimensional object in the specific material;

receiving, from the second server, the image relating to the three-dimensional object rendered in the specific material; and

displaying the image to the second user within the presentation interface.

8. The method of claim 7 , further comprising acts of:

receiving, from the second user, a request to download a file containing an electronic representation of the three-dimensional object;

generating the file from the at least one script and the set of parameter values,

wherein the file is a single computer file that is distinct from the at least one script and the set of parameter values; and

presenting the file to the second user within the presentation interface.

9. The method of claim 8 , wherein the file includes an electronic file format selected from the group comprising: STL and X3D.

10. The method of claim 7 , further comprising acts of:

calculating a price for printing the three-dimensional object in the specific material; and

presenting the price to the second user within the presentation interface.

11. The method of claim 7 , further comprising acts of:

selecting one or more printers for the three-dimensional object;

presenting the one or more printers to the second user;

receiving an input from the second user selecting a printer from the one or more printers;

generating a file containing an electronic representation of the three-dimensional object; and

sending the file to the printer.

12. A distributed computer system comprising a first server, a second server, and a client component configured to:

receive, at the first server, from a first user a presentation interface and a computer representation of a three-dimensional object stored in a 3D printable object file comprising at least one script and a set of parameter values;

provide, by the first server, to a second user interacting with a display of a client computer in the distributed computer system, the presentation interface including a display interface configured to display an image relating to the computer representation of the three-dimensional object and a control interface configured to accept inputs capable of modifying the at least one script associated with the three-dimensional object and wherein the computer representation of the three-dimensional object stored in the 3D printable object file comprising the at least one script and the set of parameter values is not provided to the second user;

receive, at the first server, from the second user interacting with the presentation interface, a request for the image based on modifying the at least one script relating to the computer representation of the three-dimensional object, wherein the request includes an object identifier and at least one or more user inputs from the group comprising: parameter values, attributes, uniform resource identifiers, cache busting markers, material identifiers, and three-dimensional ray values, wherein the object identifier and the at least one or more user inputs are applied to the at least one script relating to the computer representation of the three-dimensional object;

request, from the second server in the distributed computer system, the image relating to the computer representation of the three-dimensional object, wherein the image is generated based on a modified at least one script relating to the computer representation of the three-dimensional object;

receive the image from the second server; and

display, by the first server, the image within the presentation interface.

13. The system of claim 12 , wherein the 3D printable object file is different from the image.

14. The system of claim 13 , wherein the image comprises a rasterized two-dimensional file.

15. The system of claim 13 , wherein the image comprises a static three-dimensional file.

16. The system of claim 12 , wherein the client component is further configured to:

receive, at the first server, from the second user interacting with the control interface, instructions to modify the at least one script associated with the computer representation of the three-dimensional object;

request, from the second server, responsive to the instructions, an updated image relating to the computer representation of the three-dimensional object, wherein the updated image reflects a modified computer representation of the three-dimensional object responsive to the modified at least one script;

receive, from the second server, the updated image; and

display, by the first server, within the presentation interface, the updated image.

17. The system of claim 12 , wherein the client component is further configured to:

receive, at the first server, from the second user interacting with the control interface, instructions to modify the at least one script associated with the computer representation of the three-dimensional object;

identify on the first server, an updated image relating to the computer representation of the three-dimensional object, wherein the updated image reflects a modified computer representation of the three-dimensional object responsive to the modified at least one script; and

display, by the first server, the updated image within the presentation interface.

18. The system of claim 12 , wherein the client component is further configured to:

receive, from the second user, a request to render the computer representation of the three-dimensional object in a specific material;

request, from the second server, the image representing the rendering of the three-dimensional object in the specific material;

compute, by the second server, an appropriate geometry for constructing the three-dimensional object from the specific material;

render, by the second server, the image representing the rendering of the three dimensional object in the specific material; and

display the image to the second user within the presentation interface.

19. The system of claim 18 , wherein the client component is further configured to:

receive, from the second user, a request to download a file containing an electronic representation of the three-dimensional object;

generate the file from the at least one script and the set of parameter values,

wherein the file is a single computer file that is distinct from the at least one script and the set of parameter values; and

present the file to the second user within the presentation interface.

20. The system of claim 19 , wherein the file includes an electronic file format selected from the group comprising: STL and X3D.

21. The system of claim 18 , wherein the client component is further configured to:

calculate a price for printing the three-dimensional object in the specific material; and

present the price to the second user within the presentation interface.

22. The system of claim 21 , wherein the client component is further configured to:

select one or more printers for the three dimensional object;

present the one or more printers to the second user;

receive an input from the second user selecting a printer from the one or more printers;

generate a file containing an electronic representation of the three-dimensional object; and

send the file to the printer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2025
From: SHAPEWAYS, INC.
To: WVS INTERNATIONAL INC.
Reel/Frame 069755/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2018
From: HUDSON, ALAN D.
To: SHAPEWAYS, INC.
Reel/Frame 045180/0347 →
Continuity (2)
Provisional Application 62470117 · Mar 10, 2017
Related Publication 20180261037A1 · Sep 13, 2018