======================
This work is about the modeling of self-supporting shapes, that is, shapes
whose boundary itself can be fabricated in layers with minimal support or no
support at all.
We define such a class of shapes and demonstrate their use in three interesting
applications of FDM.
======================
The initial motivation was dual-material 3D printing, where the printer is
equiped with two extruders.
When one is in use, the other is waiting but the melted material inside starts
to ooze.
-----------
Then the oozing material drips on the fabricated object and the result is
usually not satisfying.
A frequently used solution to this problem is to carefully plan the head motion
so as to wipe the oozing material against an additional structure that is
co-fabricated nearby the main object.
-----------
The Makerbot software or the work by Tim Reiner and colleagues model such an
-----------
external structure that serves as a cleaning area for preparing a clean
extrusion.
-----------
Jean Hegel and Sylvain Lefebvre recognized the importance of placing the wiping
structure close to the main object so as to minimize travel-time and therefore
re-oozing between the wipe and the actual extrusion.
So they project the main object on the horizontal plane, dilate it a little and
model a protective wall as a vertical extrusion of this dilated projection.
========================
In the present work, we ask ourselves if one can model a "protective enclosure"
that would be even more tightly fit around the object.
The goal is of course to minimize the quantity of used material, speed up
the fabrication and improve the final quality.
-----------
In doing so, we end up with a simple 2-pass technique to compute such a tight
enclosure.
It turns out that its implementation is very similar to the code that computes
the "Ooze Shield" in the Cura software, precisely for dual-material printing.
========================
In the rest of the talk, I will
- provide a precise definition of the simple-enclosure and the two-pass
technique to compute it.
And show
- application to dual-material printing (as in Cura)
- to support structure
- and to model internal cavities, which is the most interesting application in
our opinion.
=====================
Let us define the problem.
We start with an object of interest O (say a kind of bird).
---------------------
We then want to model a shape W with 3 enclosure constraints
1. W contains O
2. The boundary of W is self-supported, that is, its boundary must be
succesfully printed on its own, save a minimal amount of support.
3. W has minimal volume (otherwise, a bounding box would do).
----------------------
The self-support constraint is largely related to the fabrication process.
In FDM, a filament of plastic will stay in place if it is sufficiently
supported from below by previously deposited filaments.
----------------------
This entails an upper bound on the slope that a surface can have while still
being fabricable/printable without support.
----------------------
In order to better understand the self-support property, it is also important
to look at the local extrema of the enclosure.
[Figure 1]
Here, on the left, is a typical object O, and a shape W that examplifies the
kind of enclosure that we would like to model.
Next to it we illustrate the four kinds of local extrema that one can find on
the boundary of the enclosure: peaks, caves, local minimas and basins.
Observe that the boundary of peaks and caves are self-supported but local
minima and basins do require some support such as a pillar.
Basins should be avoided since a pillar supporting it would have to rest on the
main object, in the red area below.
----------------------
The minima are the main variable in a trade-off that we have to make between
minimizing the volume of W on one hand, and minimizing the amount of required
additional support structure, on the other hand.
----------------------
[Figure 2]
Indeed, an enclosure with no minima is easy to obtain, but it does not satisfy
the minimal volume requirement. It may stray far form the main object O (left)
----------------------
On the other hand, with a large number of minima, one can model an enclosure
that stays very close to the surface but a large amount of support structure is
then required.
----------------------
We think that our simple-enclosure, that I'll define now, strikes a good
balance between those extremes.
=========================
To model the simple enclosure, we work on slices of the object.
Given an object X in space, the slice X_z is the planar shape obtained by
taking the intersection of X with an horizontal plane at height z.
----------------------
We also use 2D morphological operations.
Here is, in red, the notation for dilation and erosion of a slice by a disk or
radius r, which I simply define graphically here. [drawing]
----------------------
So, here is how we write the self-support property of the boundary of the
enclosure in terms of slices and erosions.
For any pair of heights z and z', the erosion of the slice of W at height z',
----------------------
by a radius proportional to the vertical distance between the two slices, must
----------------------
be included in the slice of W at height z.
----------------------
This formulation of the self-support property is a balance-point in the
trade-off that I mentioned earlier.
This is discussed in more detail in the paper.
In particular, this formulation is guaranteed to produce no basin and only few
minima, each one associated with some globally overhanging part of the main
object of interest O.
Then, adding the 2 other constraints, that W contains O and that W should
have minimal volume, uniquely defines the enclosure volume.
Let us be more concrete and consider the discrete setting, in which an
object to be fabricated is modeled using a discrete set of slices, as is the
case in the real world.
======================
This readily translates into a procedure that computes the minimal
simple-enclosure W using a two passes over the slices of O.
[pseudo code, explanation]
======================
In practice, the technique works well for both a bitmap...
======================
Here is our first application of the simple enclosure, to compute low
complexity support structure.
We use only the downward propagation and subtract the original object from the
result.
We obtain the pink volume here, which ends in a simple local minimum that can
be supported with a single pillar.
The paper describes additional refinements to this technique, such as the thin
blue layer shown here, that provides easier detaching, as well as the use of
morphological closure to further simplify the support.