# US 2021/0279944 A1 · Gpu material assignment for 3d printing using 3d distance fields

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0279944 A1
- Document ID: US20210279944A1
- Status: Published application
- Kind: A1
- Application number: 17/329,227
- Filed: 2021-05-25
- Published: 2021-09-09
- Earliest claimed: 2016-02-25
- Assignees: Stratasys, Inc.
- Applicants: Stratasys Ltd.
- Inventors: Blake Zachary COURTER; Stephen DEMAI
- Web page: https://patentgrep.com/patent/US20210279944A1

## CPC

- G06T 15/08: Volume rendering
- B29C 64/393: for controlling or regulating additive manufacturing processes
- B33Y 50/02: for controlling or regulating additive manufacturing processes
- G06F 30/00: Computer-aided design [CAD]
- G06F 30/10: Geometric CAD
- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G06T 15/005: {General purpose rendering architectures}
- G06T 15/503: {Blending, e.g. for anti-aliasing}
- B29C 64/386: Data acquisition or data processing for additive manufacturing
- G03G 15/224: {Machines for forming tactile or three dimensional images by electrographic means, e.g. braille, 3d printing}
- G06F 2113/10: Additive manufacturing, e.g. three-dimensional [3D] printing
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- B29C: SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING (making preforms B29B11/00; making laminated products by combining previously unconnected layers which become one product whose layers will remain together B32B37/00 - B32B41/00)
- B33Y: ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G03G: ELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY

## Abstract

A system for generating slice data for additive manufacturing, comprises a graphics processing unit (GPU) that receives a digital model of an object in a three-dimensional build space defined over a plurality of slices, computes a three-dimensional signed distance field over voxels in the build space, assigns a building material to each voxel based on a respective distance field value, and generates slice data output pertaining to the building material assignments for each slice. The slice data output can be used for printing the object in layers corresponding to the slices. The distance field comprises one or more vector having a vertical component with respect to the slices.

## Claims

### Claim 1

A method of generating slice data for additive manufacturing, comprising:
receiving a digital model of an object in a three-dimensional build space defined over a plurality of voxels arranged as a plurality of slices; and
for each slice:
computing z-buffer values based on vertical distances from a boundary of said digital model to voxels of said slice;
assigning building materials to voxels of said slice based on said z-buffer values; and
generating a slice data output pertaining to said building material assignments for said slice, for printing a layer of said object corresponding to said slice.

### Claim 2 (depends on 1)

The method of claim 1, wherein said computing said z-buffer values comprises comparing a maximal z-buffer value to said vertical distances and assigning said z-buffer values responsively to said comparison.

### Claim 3 (depends on 1)

The method of claim 1, comprising computing, for at least one voxel in said slice, a first z-buffer value based on a vertical distance from said at least one voxel to a portion of said boundary above said at least one voxel, and a second z-buffer value based on a distance from said at least one voxel to a portion of said boundary below said at least one voxel.

### Claim 4 (depends on 3)

The method of claim 3, comprising computing an intersection of said boundary with said slice based on said first and said second z-buffer values.

### Claim 5 (depends on 3)

The method of claim 3, comprising using respective z-buffer values of each voxel for determining a distance field value for said voxel.

### Claim 6 (depends on 5)

The method of claim 5, wherein said determining said distance field value, comprises determining distances from said voxel to a plurality of locations on the digital model, and selecting a shortest distance as said distance field value.

### Claim 7 (depends on 5)

The method of claim 5, wherein said assigning said building materials is according to a periodic function of said distance field value.

### Claim 8 (depends on 1)

The method of claim 1, comprising calculating silhouette boundaries of the digital model for said slice, based on said z-buffer values.

### Claim 9 (depends on 8)

The method of claim 8, wherein said assigning said building materials comprises, for each voxel of said slice, assigning no material to said voxel when an output value of said periodic function is in a first range, and assigning a material to said voxel when said output value of said periodic function is in a second range.

### Claim 10 (depends on 1)

A method of additive manufacturing, comprising:
executing the method of claim 1;
receiving said slice data output by a controller of an additive manufacturing system; and
dispensing by a dispensing head building materials, to form a layer according to said slice data output.

### Claim 11

A system for generating slice data for additive manufacturing of an object described by a digital model in a three-dimensional build space defined over a plurality of voxels arranged as a plurality of slices, the system comprising:
an image processor, being in communication with a controller of an additive manufacturing system, and configured to receive a slice of the plurality of slices, to compute z-buffer values based on vertical distances from a boundary of the digital model to voxels of said slice, to assign building materials to voxels of said slice based on said z-buffer values, and to transmit to said controller a slice data output pertaining to said building material assignments for said slice.

### Claim 12 (depends on 11)

The system of claim 11, wherein said image processor is configured to compute by comparing a maximal z-buffer value to said vertical distances and assigning said z-buffer values responsively to said comparison.

### Claim 13 (depends on 11)

The system of claim 11, wherein said image processor is configured to compute a first z-buffer value based on a vertical distance from a voxel of said slice to a portion of said boundary above said voxel, and a second z-buffer value based on a distance from said voxel to a portion of said boundary below said voxel.

### Claim 14 (depends on 13)

The system of claim 13, wherein said image processor is configured to compute an intersection of said boundary with said slice based on said first and said second z-buffer values.

### Claim 15 (depends on 13)

The system of claim 13, wherein said image processor is configured to determining a distance field value for each voxel using respective z-buffer values of said voxel.

### Claim 16 (depends on 15)

The system of claim 15, wherein said image processor is configured to determine said distance field value by determining distances from said voxel to a plurality of locations on the digital model, and selecting a shortest distance as said distance field value.

### Claim 17 (depends on 15)

The system of claim 15, wherein said image processor is configured to assign said building materials according to a periodic function of said distance field value corresponding to said z-values.

### Claim 18 (depends on 11)

The system of claim 11, wherein said image processor is configured to calculate silhouette boundaries of the digital model for said slice, based on said z-buffer values.

### Claim 19 (depends on 18)

The system of claim 18, wherein said image processor is configured to assign no material to voxels for which an output value of said periodic function is in a first range, and to assign materials to voxels for which said output value of said periodic function is in a second range.

### Claim 20 (depends on 1)

An additive manufacturing system, comprising:
the system of claim 1, including said controller; and
a dispensing head for dispensing building materials in layers according to said slice data output.
