Variable-width contouring for additive manufacturing Samuel Hornus , - - PowerPoint PPT Presentation

variable width contouring for additive manufacturing
SMART_READER_LITE
LIVE PREVIEW

Variable-width contouring for additive manufacturing Samuel Hornus , - - PowerPoint PPT Presentation

Variable-width contouring for additive manufacturing Samuel Hornus , Tim Kuipers , Olivier Devillers , Monique Teillaud , Jon` as Mart nez , Marc Glisse , Sylvain Lazard and Sylvain Lefebvre SIGGRAPH 2020 1 Context: 3D printing An object is


slide-1
SLIDE 1

1

Variable-width contouring for additive manufacturing

Samuel Hornus, Tim Kuipers, Olivier Devillers, Monique Teillaud, Jon` as Mart´ ınez, Marc Glisse, Sylvain Lazard and Sylvain Lefebvre

SIGGRAPH 2020

slide-2
SLIDE 2

2.1

Context: 3D printing

An object is fabricated as a stack of horizontal layers.

slide-3
SLIDE 3

2.2

Context: 3D printing

An object is fabricated as a stack of horizontal layers. Each solid layer is modeled by a slice: a planar shape.

slide-4
SLIDE 4

3.1

Context: Fabricating one layer

In turn, each layer is fabricated by solidifying a bead of some material, along a print path.

slide-5
SLIDE 5

3.2

Context: Fabricating one layer

In turn, each layer is fabricated by solidifying a bead of some material, along a print path. bead print path

slide-6
SLIDE 6

4.1

Overfill

Overfill = forbidden...

slide-7
SLIDE 7

4.2

Overfill

Overfill = forbidden... ...except for closed beads, a well controlled special case:

(we love closed beads!)

slide-8
SLIDE 8

5.1

Underfill

Example: two classic ways to fill a square with a constant-width bead.

contour parallel zig-zag

slide-9
SLIDE 9

5.2

Underfill

contour parallel

Underfill is the existence of areas of the slice not covered by a solid bead.

zig-zag

=underfill

slide-10
SLIDE 10

5.3

Underfill

Underfill is bad. We want to minimize it. Our contribution is a new technique for designing print paths that produces

  • no overfill (this is somewhat easy)
  • a small amount of underfill (almost 10x less than the state of the art)
slide-11
SLIDE 11

6

What to do?

Earlier works suggesting to use variable-width beads:

  • Jin, Du, and He. Journal of Manufacturing Systems 44 (2017).
  • Kuipers, Doubrovski, Wu, and Wang. Computer-Aided Design 128 (2020).

We follow suit, use closed, variable-width beads and try to minimize their number and curvature. Our technique.

=overfill =underfill

Uniform-width parallel contouring wo. (left) and w. (right) regularization.

slide-12
SLIDE 12

7.1

Inputs & data structure

  • A range [2γ, 2Γ] of feasible bead widths

(specific to target 3D printer).

slide-13
SLIDE 13

7.2

Inputs & data structure

  • A range [2γ, 2Γ] of feasible bead widths

(specific to target 3D printer).

1 In practice, slices are polygons. We process them into 2γ-fat shapes.

  • A 2γ-fat planar shape S: all the

maximal disks inside S have radius ≥ 2γ. 1

S

slide-14
SLIDE 14

7.3

Inputs & data structure

  • A range [2γ, 2Γ] of feasible bead widths

(specific to target 3D printer).

1 In practice, slices are polygons. We process them into 2γ-fat shapes.

  • A 2γ-fat planar shape S: all the

maximal disks inside S have radius ≥ 2γ. 1

  • An explicit representation of the

medial axis of S: MA (S) is the closure of the set of centers of maximal disks in S.

S

slide-15
SLIDE 15

8.1

Variable-width contouring

Given a shape S, we model a bead that stays in contact with the boundary of S and make the remaining inner shape “rounder.”

S

slide-16
SLIDE 16

8.2

Variable-width contouring

To do so, we replace parts of the boundary ∂S by inner tangent circular arcs (yellow)... ...so that the width of each crescent at any point x is at most min(2Γ, 2 × radius of curvature at x) − 2γ. x x

slide-17
SLIDE 17

8.3

Variable-width contouring

Then we do a parallel offset of 2γ and obtain a bead of width within the allowed range.

first bead done!

slide-18
SLIDE 18

8.4

Variable-width contouring

Now we repeat the process

slide-19
SLIDE 19

8.5

Variable-width contouring

Now we repeat the process

slide-20
SLIDE 20

8.6

Variable-width contouring

Now we repeat the process

slide-21
SLIDE 21

8.7

Variable-width contouring

The circles supporting the tangent circular arcs are chosen as the boundary of maximal disks in S. Hence, their center lies on the medial axis MA (S) of S.

S

slide-22
SLIDE 22

8.8

Variable-width contouring

The circles supporting the tangent circular arcs are chosen as the boundary of maximal disks in S. Hence, their center lies on the medial axis MA (S) of S.

S

slide-23
SLIDE 23

8.9

Variable-width contouring

Replacing by circular arc = trimming the medial axis!

slide-24
SLIDE 24

9.1

Variable-width contouring: basics

  • 1. Trimming the medial axis: removes crescents of width ≤ 2Γ − 2γ from the shape.
  • 2. Parallel offset : removes a band of width exactly 2γ, which together with the

crescents, form a bead of width varying within [2γ, 2Γ].

slide-25
SLIDE 25

9.2

Variable-width contouring: basics

  • 1. Trimming the medial axis: removes crescents of width ≤ 2Γ − 2γ from the shape.
  • 2. Parallel offset : removes a band of width exactly 2γ, which together with the

crescents, form a bead of width varying within [2γ, 2Γ]. If the input is a polygon, then:

  • the medial axis is computable (CGAL, BOOST) and
  • the two operations above produce shapes with linear or circular boundary arcs
  • nly.

Corollary: in that case, each bead is bounded by linear or circular arcs only.

slide-26
SLIDE 26

10.1

Trimming

p q T maximal disk centered on p

slide-27
SLIDE 27

10.2

Trimming

x y z q T p w(q, p) is the local maximal crescent width associated with root p and leaf q.

slide-28
SLIDE 28

10.3

Trimming

x y z q T The algorithm grows a tree from each leaf (degree-1 vertex) and finds all maximal trimmable trees. p w(q, p) is the local maximal crescent width associated with root p and leaf q.

slide-29
SLIDE 29

11.1

Complete picture with Collapsing

trimming collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths
slide-30
SLIDE 30

11.2

Complete picture with Collapsing

trimming parallel offset collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths
slide-31
SLIDE 31

11.3

Complete picture with Collapsing

trimming collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths
slide-32
SLIDE 32

11.4

Complete picture with Collapsing

trimming collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths
slide-33
SLIDE 33

11.5

Complete picture with Collapsing

trimming collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths
slide-34
SLIDE 34

11.6

Complete picture with Collapsing

trimming collapsing parallel offset Ki Si+1

¢

Si Si

tr

Si+1

¢

Si+1 trimming //offset //offset (c) Si (a) Si

tr

(b) (d) Si+1 T i collapsing traj(T i) ⊂ MA

  • Si \ (Si+1 ∪ Ki)
  • : max and min bead widths

parallel offset

slide-35
SLIDE 35

12.1

Pictures

slide-36
SLIDE 36

12.2

Pictures

slide-37
SLIDE 37

12.3

Pictures

slide-38
SLIDE 38

12.4

Pictures

slide-39
SLIDE 39

13

End of this presentation

See the paper for more, including:

  • Less underfill with shaving
  • An algorithm for sampling the print path (the center curve of each bead)
  • A comparison with the state of the art (almost 10x less underfill)
  • A proof of the absence of overfill
  • More pictures of fabricated layers

Code: https://github.com/mfx-inria/Variable-width-contouring