IP Library Granted Patent US 11,829,686
Granted Patent B2
US 11,829,686 · App. 17/026,009 · Granted Nov 28, 2023

3D model validation and optimization system and method thereof

Inventors: Baha'Aldeen Abunojaim (Amman, JO); Muhannad Taslaq (Amman, JO); Hasan Aadab Alhimish (Amman, JO)
Assignee: INTEGRAL REALITY LABS, INC.
G06F30/00B29C64/386B29C70/04G06F3/04815G06F3/04847G06T17/20G06T19/003G06T19/006G06T19/20G06F2111/02G06F2111/06G06F2113/22G06F2117/02G06F2117/08G06F2119/18
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,829,686
App. No.
17/026,009
Granted
Nov 28, 2023
Kind
B2
Abstract

A network system can optimize 3D models for 3D printing. A smoothing operation can be performed for a 3D model that comprises a plurality of voxels by identifying exterior voxels of the 3D model. For a first exterior voxel of the 3D model, an exterior surface orientation can be determined and a smoothing operation can be performed based on the determined exterior surface orientation. The smoothing operation can include performing a triangulation operation based on the determined exterior surface orientation of the first exterior voxel. Furthermore, in response to determining that a dimension of a set of voxels is below a threshold limit, one or more voxels can be added to the set of voxels to satisfy the threshold limit.

Claims (41)

1. A method for optimizing 3D models for 3D printing, the method being implemented by a computer system and comprising:

performing a smoothing operation for a 3D model that comprises a plurality of voxels arranged in a three-dimensional array by:

identifying a first set of voxels of a plurality of voxels of the 3D model as exterior voxels, the first set of voxels being identified based on their respective positions along an exterior surface of the 3D model;

for a first exterior voxel of the first set of voxels, determining an exterior surface orientation of the first exterior voxel;

performing, based on the determined exterior surface orientation of the first exterior voxel, a smoothing operation on an exterior surface of the first exterior voxel, including performing a triangulation operation based on the determined exterior surface orientation of the first exterior voxel; and

in response to determining that a dimension of a second set of voxels of the plurality of voxels of the 3D model is below a threshold limit, adding one or more voxels to the second set of voxels such that the threshold limit for the dimension is met.

2. The method of claim 1 , wherein determining the exterior surface orientation of the first exterior voxel comprises performing a lookup within a stored table of valid exterior surface orientations.

3. The method of claim 2 , wherein the lookup is performed based on an orientation of the first exterior voxel.

4. The method of claim 2 , wherein the lookup is performed based on respective orientations of a plurality of voxels that neighbor the first exterior voxel.

5. The method of claim 2 , wherein the lookup is performed based on respective orientations of the first exterior voxel and a plurality of voxels that neighbor the first exterior voxel.

6. The method of claim 1 , further comprising performing a hollowing process of the 3D model by:

identifying a location for an escape hole; and

generating an inner surface within the 3D model.

7. The method of claim 6 , wherein identifying the location for the escape hole is based on an orientation of the 3D model.

8. The method of claim 6 , wherein identifying the location for the escape hole comprises identifying a downward-oriented portion of the exterior surface of the 3D model as the location of the escape hole.

9. The method of claim 6 , wherein the inner surface within the 3D model is generated based on a user input to adjust an amount of the 3D model to be hollowed.

10. The method of claim 1 , wherein the threshold limit corresponds to a minimum layer thickness that is determined based on a printing material or a 3D printer model.

11. The method of claim 1 , further comprising displaying a rendering of the 3D model before and after optimizing the 3D model for 3D printing within a web browser.

12. A network system for validating and optimizing a 3D model for 3D printing, comprising:

one or more processors;

one or more memory resources storing instructions that, when executed by the one or more processors, cause the network system to:

perform a smoothing operation for a 3D model that comprises a plurality of voxels arranged in a three-dimensional array by:

identifying a first set of voxels of a plurality of voxels of the 3D model as exterior voxels, the first set of voxels being identified based on their respective positions along an exterior surface of the 3D model;

for a first exterior voxel of the first set of voxels, determining an exterior surface orientation of the first exterior voxel;

performing, based on the determined exterior surface orientation of the first exterior voxel, a smoothing operation on an exterior surface of the first exterior voxel, including performing a triangulation operation based on the determined exterior surface orientation of the first exterior voxel; and

in response to determining that a dimension of a second set of voxels of the plurality of voxels of the 3D model is below a threshold limit, add one or more voxels to the second set of voxels such that the threshold limit for the dimension is met.

13. The network system of claim 12 , wherein determining the exterior surface orientation of the first exterior voxel comprises performing a lookup within a stored table of valid exterior surface orientations.

14. The network system of claim 13 , wherein the lookup is performed based on respective orientations of the first exterior voxel and a plurality of voxels that neighbor the first exterior voxel.

15. The network system of claim 12 , wherein the executed instructions further cause the network system to perform a hollowing process of the 3D model by:

identifying a location for an escape hole; and

generating an inner surface within the 3D model.

16. The network system of claim 15 , wherein identifying the location for the escape hole comprises identifying a downward-oriented portion of the exterior surface of the 3D model as the location of the escape hole.

17. The network system of claim 15 , wherein the inner surface within the 3D model is generated based on a user input to adjust an amount of the 3D model to be hollowed.

18. The network system of claim 12 , wherein the threshold limit corresponds to a minimum layer thickness that is determined based on a printing material or a 3D printer model.

19. The network system of claim 12 , wherein the executed instructions further cause the network system to cause a user device of a user to display a rendering of the 3D model before and after optimizing the 3D model for 3D printing within a web browser.

20. A non-transitory computer readable medium storing instructions that, when executed by one or more processors of a network system, cause the network system to:

perform a smoothing operation for a 3D model that comprises a plurality of voxels arranged in a three-dimensional array by:

identifying a first set of voxels of a plurality of voxels of the 3D model as exterior voxels, the first set of voxels being identified based on their respective positions along an exterior surface of the 3D model;

for a first exterior voxel of the first set of voxels, determining an exterior surface orientation of the first exterior voxel;

performing, based on the determined exterior surface orientation of the first exterior voxel, a smoothing operation on an exterior surface of the first exterior voxel, including performing a triangulation operation based on the determined exterior surface orientation of the first exterior voxel; and

in response to determining that a dimension of a second set of voxels of the plurality of voxels of the 3D model is below a threshold limit, add one or more voxels to the second set of voxels such that the threshold limit for the dimension is met.

Assignments (2)
MERGER Recorded Aug 10, 2022
From: MIXED DIMENSIONS INC.
To: INTEGRAL REALITY LABS, INC.
Reel/Frame 060775/0502 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2020
From: ABUNOJAIM, BAHA'ALDEEN; TASLAQ, MUHANNAD; ALHIMISH, HASAN AADAB
To: MIXED DIMENSIONS INC.
Reel/Frame 053924/0527 →
Continuity (3)
Continuation 15703866 · Sep 13, 2017
Provisional Application 62394676 · Sep 14, 2016
Related Publication 20210004503A1 · Jan 7, 2021