0% found this document useful (0 votes)
61 views10 pages

1 s2.0 S0010448515000263 Main PDF

.

Uploaded by

Toshit Jain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views10 pages

1 s2.0 S0010448515000263 Main PDF

.

Uploaded by

Toshit Jain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Computer-Aided Design 65 (2015) 1–10

Contents lists available at ScienceDirect

Computer-Aided Design
journal homepage: www.elsevier.com/locate/cad

Support slimming for single material based additive manufacturing✩


Kailun Hu, Shuo Jin, Charlie C.L. Wang ∗
Department of Mechanical and Automation Engineering, The Chinese University of Hong Kong, PR China

graphical abstract

highlights
• Optimize the shape of a designed model into a ‘self-supported’ state for AM.
• Global shape of a model is preserved by minimizing the energy of rigidity.
• A closed-form solution for minimal rotation to drive the optimization.
• Tackle the shape optimization problem for reducing supporting structures.

article info abstract


Article history: In layer-based additive manufacturing (AM), supporting structures need to be inserted to support the
Received 5 August 2014 overhanging regions. The adding of supporting structures slows down the speed of fabrication and
Accepted 7 March 2015 introduces artifacts onto the finished surface. We present an orientation-driven shape optimizer to slim
down the supporting structures used in single material-based AM. The optimizer can be employed as a
Keywords: tool to help designers to optimize the original model to achieve a more self-supported shape, which can
Geometric algorithm
be used as a reference for their further design. The model to be optimized is first enclosed in a volumetric
Shape optimization
Design tool
mesh, which is employed as the domain of computation. The optimizer is driven by the operations
Additive manufacturing of reorientation taken on tetrahedra with ‘facing-down’ surface facets. We formulate the demand on
minimizing shape variation as global rigidity energy. The local optimization problem for determining a
minimal rotation is analyzed on the Gauss sphere, which leads to a closed-form solution. Moreover, we
also extend our approach to create the functions of controlling the deformation and searching for optimal
printing directions.
© 2015 Elsevier Ltd. All rights reserved.

1. Introduction

AM has emerged as one of the most important methods for re-


✩ This paper has been recommended for acceptance by Myung-Soo Kim. alizing the fast fabrication of freeform solids. Stereolithography Ap-
∗ Corresponding author. Tel.: +852 39438052; fax: +852 26036002. paratus (SLA) and Fused Deposition Modeling (FDM) are two widely
E-mail address: [email protected] (C.C.L. Wang). used approaches in AM because they achieve a very good balance
http://dx.doi.org/10.1016/j.cad.2015.03.001
0010-4485/© 2015 Elsevier Ltd. All rights reserved.
2 K. Hu et al. / Computer-Aided Design 65 (2015) 1–10

Fig. 1. An orientation-driven shape optimization approach is presented in this paper to show how a given model can be deformed so that the usage of the support structure
is significantly reduced in AM with a single material. Layered fabrication based on the FDM method (middle left) and on the SLA method (middle right) can both benefit from
this work to improve the efficiency of the manufacturing and the quality of the finished models.

the support is separated from the main object by being torn away
at the top of the columns. This step is always performed manually.
More seriously, the surface of the main object is easily damaged
by the visual artifacts which are left on its surface (see Fig. 2 for
an example). Note that although the process of drop-on-powder
based AM and Selective Laser Sintering (SLS) is self-supported by
the powders, a large group of machines using FDM and SLA suffer
from the problem of support.

1.2. Tool for design pipeline—motivation of this work

In the literature of design-for-manufacturing, many applica-


tions allow the shape of a model to be adjusted before finalizing
the design so that a better manufacturability can be achieved. After
designing a shape with the help of modern geometric model-
ing techniques, designers start to take the ‘self-supportness’ into
consideration when they wish to fabricate the physical model by
single-material AM. In many cases, designers manually change the
shape of a design and then verify the self-supportness by apply-
ing the support generation tools. Such a trial-and-error process is
Fig. 2. Artifacts are left on the surface of finished models after removing the tedious and can take up much time and effort. Little research atten-
support structures—the photograph is of a model fabricated by MIP-SLA. Examples tion has been paid in the literature to the automation of this proce-
of single-material FDM can be found in [3].
dure. In this work, we provide a support slimming optimizer in the
design pipeline to help designers to generate better self-supported
between the cost and the quality. Both SLA and FDM fabricate intermediate models as references for finalizing their designs. A
models in a layer-by-layer manner, where supporting structures new design pipeline after integrating our shape optimizer is shown
(also simply called support) need to be added during the manufac- in Fig. 3.
turing process. Specifically, the manufacturing material cannot be
deposited on a layer where there is insufficient material on the pre- 1.3. Main results
vious layer. For example, the overhangs with a large hanging area
can easily collapse under gravity. The problem is solved by adding We propose a novel shape optimization approach to optimize
supports to the originally designed models (Fig. 1). Recent devel- the shape of a designed model M into a ‘self-supported’ state for
opments in AM allow us to generate the supporting structures au- AM (see Fig. 1). The optimizer is formulated on a volumetric mesh
tomatically (e.g., [1,2]). T enclosing M (Section 3.1). The global shape of M is preserved
by minimizing the energy of rigidity defined on T (Section 3.2).
1.1. Problems caused by support The benefit of taking the computation on T is twofold. Firstly, the
computation is more efficient and easier to converge when the
When the support is fabricated by a dissolvable material which mesh density of T is coarser than M . Secondly, geometric details
on M can be preserved during the optimization. The procedure of
is different from the one used to print the designed model,
optimization is driven by reorienting the tetrahedra with ‘facing-
the support can be removed automatically by a post-process
down’ surface facets. Being a major technical contribution of this
(Ref. [4]). However, for those manufacturing techniques with a
work, a closed-form solution is derived from the analysis on the
single material (e.g., SLA and the low-cost FDM machines), the
Gauss sphere to determine the minimal rotations (Section 4). This
supporting structure poses many problems to users. Firstly, the
work provides a tool (with error control) for manipulating the
volume of the support could be large compared to the designed shape of a designed model to reduce the usage of supporting
model, which leads to a significant waste of materials, energy and structures. Our optimizer can be integrated into the design pipeline
time—our study shows that up to 63.6% of the manufacturing time to relieve the designers from carrying out tedious work (Fig. 3).
in FDM could be spent on the fabrication of the support. Although To the best of our knowledge, this paper is the first one which
the increase of fabrication time in the Mask-Image Projection tackles the shape optimization problem so as to reduce the usage
based Stereolithography Apparatus (MIP-SLA) [5] is not significant, of supporting structures in AM.
because it is proportional only to the number of layers, another
problem caused by the supports in single-material AM is common. 2. Related works
This is the difficulty in removing the supports automatically. When
the support is fabricated in the same material as the design model, Shape and topology optimization techniques have been widely
it is linked to the model by many thin columns. After fabrication, employed in a variety of engineering applications (Ref. [6,7]).
K. Hu et al. / Computer-Aided Design 65 (2015) 1–10 3

Fig. 4. Flowchart of our shape optimization algorithm.

In the literature, many geometric modeling and processing


problems are formulated under the framework of optimization.
A good survey can be found in the book by Botsch et al. [20].
Because the shape optimization taken in this paper is based on
a local/global deformation strategy, we review only the related
techniques below. Some recent approaches solve the deformation
problem based on the as-rigid-as-possible (ARAP) consideration
[21,22], where they preserve the rigidity of every element in the
local step and then globally blend the elements together by solving
a least-square problem. The position constraints of handles can be
enforced by fixing the corresponding variables in the global step.
Fig. 3. Our supporting slimming optimizer (the stage shown in yellow) can be
The local/global optimization is also employed in [23] for solving
incorporated into the common design pipeline as a tool. This flowchart shows how the mesh parameterization problem. Recently, Kwok and Wang
to use our optimizer in AM-based model design. [24] presented an optimization framework for the design automa-
tion of human-centric products by solving a mixed-integer ARAP
Recently, these techniques have been used in AM applications. For optimization problem. The procedure of local/global ARAP defor-
instance, the issue of a model balance for AM has been tackled mation employed in this paper is driven by a novel reorientation
by Prévost et al. [8] by carving and shape deformation. This ap- scheme to solve the problem of support slimming.
proach is followed by a work in [9] to optimize the moment of
inertia for designing a spinnable object. Telea and Jalba [10] inves- 3. Optimization by deformation
tigated the printability of a model by voxel representation, where
regions, bridges, spike and holes which are too thin can be auto- The mission of our optimizer is to deform the input model M
matically detected. A physically based stress-relief algorithm has to a shape M ′ by which the supporting structures are reduced
been presented in [11] to automatically detect and modify the ar- and local details are preserved. To achieve this goal, a volumet-
eas with high stress by hollowing, thickening and inserting struts ric mesh T is employed as the computation domain so that the
to reinforce the strength of the models. Wang et al. [12] tried to geometry details can be preserved. The demands placed on the
generate a skin-frame structure to minimize the volume of manu- slimming down supports are formulated as reducing the ‘facing-
facturing material and the number of struts. Zhou et al. [13] have down’ surface facets on T while minimizing its deformation (see
developed a method for determining the worst-load distribution the flowchart shown in Fig. 4).
for a shape that will cause high local stress or large deformations
so that the shape can be enhanced at those weak regions. Umetani 3.1. Computation domain and notations
and Schmidt [14] have proposed a method to determine an op-
timal printing direction to maximize the mechanical strength of To preserve the geometry details on the given model M , we
a model fabricated by AM. Lu et al. recently solved a strength- constructed a tetrahedral mesh T enclosing M as the computa-
to-weight problem in [15] to relieve the interior stress inside a tion domain. Every vertex on M is encoded with the positions of
printed model by introducing optimal honeycomb-cells structures. the tetrahedral vertices on T by the barycentric coordinate. As a
Although many optimization issues relating to AM have been in- result, when T is deformed into a new shape, a deformed shape
vestigated, how to optimize the shape to reduce the supporting of M (i.e., M ′ ) can be obtained by applying the barycentric coordi-
structures is still an open problem which needs to be studied. nate. When the volumetric mesh T is coarser than M , the geom-
The determination of the parting direction for a mold is a typical etry details on M can be preserved in the deformation. There are
orientation optimization problem, and it is one that has been stud- many methods described in the literature for generating a surface
ied for decades. Chen [16] presented an algorithm to determine mesh to enclose an input surface mesh (e.g., [25,26]). After that,
the parting direction by finding the minimum volume bounding the tetrahedral mesh T can be generated from the enclosing sur-
box through fuzzy representation selection. Priyadarshi and Gupta face mesh [27].
proposed an algorithm in [17] to find the feasible parting directions For a tetrahedral mesh CT = (V ; E ; F ; T ), V = {vi }, E = {eij },
through the visibility of facets by graphics hardware acceleration. F = {fijk }, T = {tijkl } are used to denote the sets of vertices, edges,
The graphics accelerated hardware was also employed in [18] to facets and tetrahedrals, respectively. vi ∈ ℜ3 gives the position of
help speed up the search of the feasible mold parting directions. Li each vertex vi , and n̂j denotes the normal of a face fj . The faces that
et al. proposed a parting line generation algorithm for mesh mod- are located at the boundary of T are called surface faces, and the
els in [19]. All these approaches can be regarded as ‘rigid’ orienta- tetrahedra that have at least one surface face are named as surface
tion optimization techniques that do not change the shape of the tetrahedra. The sets of surface faces and tetrahedra are represented
models. Our work deforms both the shape and the pose of an in- by F s and T s . Moreover, all values from the original model are
put model to slim down its supporting structure for single-material represented with a superscript ‘o’, and those computed from the
AM. current status are denoted with a superscript ‘c’.
4 K. Hu et al. / Computer-Aided Design 65 (2015) 1–10

local rotation will have less influence on the neighboring tetrahe-


dra. With the help of Vt , the as-rigid-as-possible (ARAP) energy of a
deformed tetrahedral mesh can be defined as

E (CTnew , CTo ) = w

wt ∥Vne
t − Lt Vot ∥2F , (3)
t ∈T

where ∥ · ∥F is the Frobenius norm, Lt is a rigid transformation ma-


trix of the tetrahedron t, and wt is t’s volume that serves as the
weight. In the prior work of ARAP deformation, position handles
are applied to move some vertices so that an updated shape can be
obtained by minimizing the above ARAP energy. The optimization
is actually in a least-square form when Lt s are the constant ma-
Fig. 5. Faces are classified according to the printing direction. (For interpretation of
trices determined in the local
step. Here, we formulate the ARAP
the references to color in this figure legend, the reader is referred to the web version w
of this article.) energy as Eq. (3) instead of wt ∥Lt Vne
t − Vot ∥2F . As a result, the
factorization of a linear system can be reused in the subsequent
Printing Direction: It is the fabrication direction along which the iterations of optimization.
model is printed layer by layer—denoted by d̂p . Without the loss Rigid Transformation: The local step for obtaining Lt plays a very
of generality, in the rest of this paper we assume that d̂p is a unit important role in our formulation.
vector. • In the prior ARAP work, the rigid transformation from the
Maximal Self-Supported Angle: An overhanging region that can original shape Vot of a tetrahedron t to its current shape Vct is
be printed without adding support is called self-supported. The an- determined by using a ‘‘signed version’’ of the singular value
gle between the region’s tangent plane and the printing direction decomposition (SVD) on the affine transformation matrix Q =
is called the self-supported angle α . When different manufacturing Vct (Vot )−1 (Ref. [22]). That is, Q = UΣ WT , where Σ is a diagonal
materials are used, the AM processes are equipped with different matrix with all elements being positive. Σ defines the scaling
maximal self-supported angles. We define a self-supporting coef- factors in three orthogonal directions in Q. As a result, Q can be
ficient τ in our formulation in accordance with the maximal self- turned into a rigid transformation M = UWT .
supported angle αmax as τ = sin(αmax ). • Applying M to a tetrahedron t will transform it to an orientation
Fixed Region: During the shape optimization, a region of the model that best approximates to the current shape of t. A transformed
is selected to be fixed to serve as the boundary conditions (see the surface tetrahedron may contain some risky faces, and these
yellow region in Fig. 5 as an example). Tetrahedral vertices (both need to be turned into safe ones by applying an additional
the boundary and the interior ones) in this region are fixed. Users rotation R. Basically, an ideal rotation turns all risky faces on
are free to define the parts to be fixed in our approach. Usually, the a tetrahedron into safe ones while conducting a rotation with a
bottom of a model is selected as the fixed region. minimal rotational angle. The method for solving this problem
Safe Face: The surface face on CT whose normal n̂ satisfies will be presented in Section 4. Specifically, after determining a
minimal rotation angle θ and its corresponding rotation axis r̂,
n̂ · d̂p ≥ −τ . (1) R(r̂, θ ) can be obtained [28]. For those safe tetrahedra and the
interior tetrahedra, R(r̂, θ ) = I.
See the green faces in Fig. 5 for an example. These faces are termed
the self-supported faces, and the above inequality on the normals The rigid transformation applied in our optimization framework
of faces is termed the self-supporting condition. (i.e., Eq. (3)) is a cascade of these two transformations because
Lt = R(r̂, θ )M.
Risky Face: The surface face with n̂ · d̂p < −τ . For example, the
orange regions in Fig. 5 are formed by risky faces. Procedure of Optimization: We iteratively apply the local and
Note that a surface tetrahedron containing no risky face is then the global steps on the volumetric mesh CT to reduce the
called a safe tetrahedron. On the other aspect, if one of the surface number of risky faces.
tetrahedron’s faces is risky, the tetrahedron is also defined as a risky
• Step (1): For each tetrahedron, the rigid transformation M be-
tetrahedron.
tween its current position/shape and the given position/shape
is computed.
3.2. Optimization framework
• Step (2): For each risky tetrahedron, a minimal rotation R(r̂, θ )
is computed to convert it into a safe one (see Section 4). As a
The goal of slimming down the support in AM can be inter- result, Lt is obtained for all tetrahedra.
preted as deforming the given model into a new shape so that it
• Step (3): A least-square solution for the new position/shape of
has fewer risky faces. Because the volumetric mesh CT is used as
the volumetric mesh is obtained by minimizing the deformation
the domain of computation, we convert the problem into the re-
energy (Eq. (3)).
quirement of turning risky faces into safe ones while minimizing
the deformation. • Step (4): Go back to step (1) until the terminal condition is
reached.
Deformation Energy: For each tetrahedron t ∈ T with four ver-
tices v1 , v2 , v3 and v4 , we construct a local frame in t as A hybrid terminal condition is employed in the iteration: (a) the
maximal iteration steps (e.g., 100 in our implementation) and
Vt = [v1 − v4 v2 − v4 v3 − v4 ] (2) (b) the number of risky faces do not decrease in the successive five
with v4 being an interior vertex on the volumetric mesh. This selec- steps of the iteration. More sophisticated terminal conditions will
tion of local origin is based on the heuristic that an interior vertex be introduced in Section 5.2 to control the geometry approxima-
is connected with more tetrahedra. Making it static (as origin) in a tion error on the optimized (deformed) model.
K. Hu et al. / Computer-Aided Design 65 (2015) 1–10 5

Fig. 6. Rotation analysis on the Gauss sphere to enforce the condition of self-
supporting: (a) a rotation to move n̂1 and n̂2 into the feasible region Hp (in cyan) Fig. 7. Case I—there is only one surface face on a risky tetrahedron.

w.r.t. the printing direction d̂p , and (b) dual-feasible-regions of n̂1 and n̂2 , Hn̂1 and
Hn̂2 , form a target region as Ht = Hn̂1 ∩ Hn̂2 to inversely rotate d̂p into. a result, the minimal angle can be determined by rotating d̂p into
the DFR of n̂. Specifically, for a surface tetrahedron t with m surface
4. Computation of minimal rotation faces (m > 1), we can inversely rotate d̂p into the common area
defined by the DFRs of these faces—that is Ht = Hn̂1 ∩ · · · ∩ Hn̂m
Served as the core of our shape optimization approach, the (see Fig. 6(b)).
computation of minimal rotation is formulated in a closed-form in Methods for determining the minimal angle (by inverse
this section. rotation) in different configurations are presented below. Cases of
Problem Definition: Given a tetrahedron t ∈ T s with four faces tetrahedra with one and two surface faces are discussed. We found
{fi } (i = 1, . . . , 4) and their corresponding normals as {n̂i }, the only a very few cases with three surface faces in our tests. For such
minimal rotation is defined as cases, the configuration space on the Gauss sphere is divided into
eight regions. This makes the closed-form formulation of minimal
arg min ∥R(r̂, θ ) − I∥2g rotation very tedious. To have an easy-to-implement approach, a
r̂,θ (4) tetrahedron t with more than two surface faces is split into four
s.t ., ∀fi ∈ F s , (R(r̂, θ )n̂i ) · d̂p ≥ −τ tetrahedra by inserting a new vertex at the middle of t, and this
where ∥ · ∥g is a general matrix norm to measure how significantly will not affect t’s neighboring tetrahedra.
R(r̂, θ ) deviates from I.
Directly solving this problem by constrained nonlinear opti- 4.2. Case I: one surface face
mization is tedious and time-consuming. The problem is a pure ro-
tation issue. Therefore, we analyze it on the Gauss sphere to find a For the case of a tetrahedron t with only one surface face f
compact solution. whose normal is n̂, if the self-supporting condition (Eq. (1)) is not
satisfied on f , the point d̂p must fall outside the feasible region Hn̂ .
4.1. Analysis on Gauss sphere
The minimal inverse rotation that moves d̂p back into Hn̂ can be
For a risky tetrahedron in R3 , the unit normal vectors of its determined by projecting d̂p onto the plane of Hn̂ and then nor-
four faces can be considered as four points on the Gauss sphere malizing it to the unit vector d̂′p . Here d̂′p is the closest point to d̂p
S2 . Meanwhile, the unit vector d̂p of the printing direction is also in Hn̂ . Thus, the minimal rotation axis is r = d̂′p × d̂p and the rota-
mapped to a point on S2 . Without a loss of generality, d̂p is as- tion angle θ = arccos(d̂p · d̂′p ). (See Fig. 7.)
sumed to be the top point of the Gauss sphere (i.e., d̂p = (0, 0, 1)).
Now the condition of self-supporting for a surface face (Eq. (1)) can
4.3. Case II: two surface faces
be interpreted as that the normal n̂ must be located at the half-
space Hp above/on the plane z = −τ . As illustrated in Fig. 6(a), a
For the case that a tetrahedron t has two surface faces f1 and f2
risky tetrahedron may have a few surface faces that are not self-
(with n̂1 and n̂2 as their normals respectively), we present a closed-
supported. When this situation occurs, we can apply a rotation on
form solution of the minimal rotation below. Again, the analysis
the normal vectors to move them into the safe region (i.e., inside
is performed with the help of the DFRs and the inverse rotation.
Hp ). The rotation is actually R(r̂, θ ) used in Eq. (4), where a mini-
Specifically, the Gauss sphere is decomposed into five regions with
mal rotation angle θ is demanded.
respect to Hn̂1 and Hn̂2 , where different regions lead to different
When there is more than one risky face on a tetrahedron, de-
termining a minimal rotation to move all points (corresponding configurations of minimal rotation. The yellow part is the feasible
to the normals on risky faces) into the feasible region Hp is not region Ht . The boundaries of the configuration regions are formed
straightforward—see Fig. 6(a). To solve this problem, a dual repre- by five planes (see the illustration in Fig. 8). Two planes, P⊥n̂1 and
sentation of Hp is defined as follows. P⊥n̂2 passing through the corner points of Ht are perpendicular to
Pn̂1 and Pn̂2 respectively. The plane PAC passing through the origin
Dual-Feasible-Region (DFR): The self-supporting condition for a ˆ which splits the region into two
is perpendicular to the vector ca,
surface face with normal n̂ (i.e., Eq. (1)) can be considered as halves. Equations of the five planes help to define five half-spaces,
requesting d̂p to be located at the same side of n̂ with reference as follows:
to the plane: xn̂x + yn̂y + z n̂z + τ = 0. Therefore, a DFR of d̂p for
n̂ can be defined by the half-space Hn̂1 = {p | ∀p ∈ S2 , n̂1 · p + τ ≥ 0}
Hn̂2 = {p | ∀p ∈ S2 , n̂2 · p + τ ≥ 0}
Hn̂ = {p | ∀p ∈ S2 , p · n̂ + τ ≥ 0}. (5) HAC = {p | ∀p ∈ S2 , caˆ · p ≥ 0} (6)
Thus, the self-supporting condition becomes d̂p ∈ Hn̂ . H⊥n̂1 = {p | ∀p ∈ S2 , (caˆ × n̂1 ) · p + d ≥ 0}
H⊥n̂2 = {p | ∀p ∈ S2 , (n̂2 × caˆ ) · p + d ≥ 0}
Inverse Rotation: Rotating n̂ by θ around the axis r̂ is equivalent to
inversely rotating d̂p with the angle (−θ ) around the same axis. As ˆ = (n̂1 × n̂2 )/∥n̂1 × n̂2 ∥ and d = τ ∥n̂1 × n̂2 ∥/(1 + n̂1 · n̂2 ).
where ca
6 K. Hu et al. / Computer-Aided Design 65 (2015) 1–10

Fig. 8. Case II—there are two surface faces on a risky tetrahedron. The Gauss sphere
is decomposed into five regions corresponding to the five different configurations of
minimal rotation. (For interpretation of the references to color in this figure legend,
the reader is referred to the web version of this article.)

Fig. 10. Example of support slimming on the Armadillo model and the comparison
of AM results before vs. after the shape optimization in both MIP-SLA (bottom-left)
and FDM (bottom-right). The optimization ‘raises up’ the arms and ‘pulls down’ the
tail. In the pictures of MIP-SLA, the bottom row shows the optimized result; in the
pictures of FDM, the right model has been optimized.

By the configuration analysis above, we solve the problem of


minimal rotation in a closed-form instead of non-linear optimiza-
tion. Meanwhile, the global step is a pre-factorized least-square
problem. As a result, each iteration of the optimization procedure
can be evaluated very efficiently.

Fig. 9. When d̂p falls in different regions, it has different targets for the minimal 5. Results and discussion
rotation: (a)–(d) the configurations for regions I–IV, respectively. (For interpretation
of the references to color in this figure legend, the reader is referred to the web
version of this article.) The approach proposed in this paper has been implemented by
C++ together with the Eigen library [29] as the numerical solver.
All the tests below are taken on an Intel Core i7-3770 3.40 GHz
Configuration I: When d̂p ∈ Hn̂1 ∩ H⊥n̂1 , the minimal inverse
computer with 8 GB RAM. Our current implementation does not
rotation moves d̂p onto the arc ADC
 (see the blue region in Fig. 9(a)).
use the multi-core acceleration. The approach has been tested with
Here, H denotes a complementary set of H . To realize that, we several models, and all the results are encouraging.
project d̂p onto the plane Pn̂1 and normalize it to a unit vector d̂′p .
As a result, the rotation axis for turning risky faces safe is r =
5.1. Experimental results
d̂′p × d̂p with the angle θ = arccos(d̂′p · d̂p ). Note that, in all the
configurations below, r and θ can be determined in the same way Our first example is the Dino model which was shown in Fig. 1.
after obtaining d̂′p . In this optimization, we set the maximal self-supported angle
αmax = 0. As a result of shape optimization, the Dino ‘raises up’
Configuration II: This configuration occurs when d̂p ∈ Hn̂2 ∩ H⊥n̂2
its head and arms. Local details of the bone structures are well-
(i.e., falling in the green region shown in Fig. 9(b)). We then project
preserved. The original and optimized models have been tested on
d̂p onto the plane Pn̂2 and normalize it to d̂′p , which actually moves
two different types of AM machines – the MIP-SLA and the For-
d̂p onto the arc ABC
. tus 360mc FDM – where the supporting structures for MIP-SLA are
Configuration III: The respective region of this configuration is generated by the region subtraction method [2] and the support for
FDM is generated by the software delivered together with the For-
HAC ∩ H⊥n̂1 ∩ H⊥n̂2 (the red region shown in Fig. 9(c)). If d̂p falls
tus machine. The second example is the Armadillo model. Fig. 10
in this configuration, the closest point in the feasible region Ht is
shows the result of shape optimization on this example, where Ar-
the point A. The position of A can be computed by the planes. We
madillo ‘raises up’ its arms and ‘pulls down’ its tail. Quantitative
then assign the position of A to d̂′p .
measurements of these two examples are given in Table 1 for the
Configuration IV: This is d̂p ∈ HAC ∩ H⊥n̂1 ∩ H⊥n̂2 (the purple purpose of comparison.
In both MIP-SLA and FDM, the material usage for the support
region in Fig. 9(d)). In Ht , the closest point to d̂p is point C . Thus,
has been greatly reduced. Because the fabrication time of FDM is
its position is assigned as d̂′p to compute the minimal rotation along proportional to the total materials usage, slimming down the sup-
the axis r = d̂′p × d̂p with the angle θ = arccos(d̂′p · d̂p ). port will significantly improve the efficiency of the fabrication as
K. Hu et al. / Computer-Aided Design 65 (2015) 1–10 7

Fig. 11. Examples of support slimming on more models: Dinosaurus (top), Bunny (middle) and Pig (bottom). The supporting structure can be effectively reduced by applying
our shape optimization approach to all of these models.

Table 1
Comparison of fabrication cost.
Printer Material usagea Layer num Fab time (min)b
Main Support

Dino— Fig. 1
Input MIP-SLA 11.2 g 3.2 g 717 127 m
Optm MIP-SLA 10.9 g 0.5 g 865 153 m
Input FDM 1.30 in3 2.12 in3 408 428 m
Optm FDM 1.21 in3 1.07 in3 491 281 m
Armadillo— Fig. 10
Input MIP-SLA 26.4 g 2.9 g 692 117 m
Optm MIP-SLA 25.6 g 0.2 g 785 133 m
Input FDM 1.47 in3 2.57 in3 389 483 m
Optm FDM 1.38 in3 1.23 in3 440 322 m
a
The material used in MIP-SLA is measured by the weight of resin and in FDM is measured by the volume of filaments.
b
The time of fabrication is reported in the unit of minutes.

Table 2 of 100 iterations is reported. Note that the majority of the time is
Statistics of computational performance.
spent on the local steps for computing SVD and minimal rotation.
Model Fig. Volumetric mesh αmax Time(s)a The equation system of the global blending step needs only to be
Ver. # Tet. # factorized in the first step, and the factorization can be reused in
Dino 1 974 3 299 0° 4.151 the subsequent steps where the substitution can be computed very
Armadillo 10 2373 8 189 0° 10.717 efficiently. To further investigate the convergency of our shape op-
Dinosaurus 11 4345 16 803 10° 22.525 timization algorithm, we track the number of risky faces during the
Bunny 11 439 1 536 0° 1.899
computation. As shown in Fig. 12, the number of risky faces keeps
Pig 11 1046 4 045 10° 5.133
a
dropping in all the examples (although this may not be monoton-
The time reported in this column is the total time of 100 iterations in the unit
of seconds. We assume different materials are used in the fabrication—therefore,
ically).
different maximal self-supported angles, αmax , are used. It is obvious that having more vertices on the volumetric mesh
leads to longer computing time. On the other hand, a volumetric
well. Note that this will benefit not only the FDM printing with sin- mesh with too coarse a resolution will give a large shape approxi-
gle material but also the advanced FDM using dissolvable mate- mation error. Therefore, we usually employ a mesh with less than
rial in supports. The time of fabrication in MIP-SLA depends on the 5k vertices, and this results in a good trade-off between speed and
number of total layers of a model. Therefore, slimming down the quality.
support will not speed up the MIP-SLA printing. However, another
important aspect of MIP-SLA benefited by this work is the surface 5.2. Extensions
quality of finished model. The supporting structures and the main
model are linked by a few anchor points (AP). After removing the
Our optimization approach provides a basic tool for realizing
supports in a post-process, in place of the APs some artifacts usu-
the more interesting applications. Two examples, (1) support
ally appear (Fig. 2). The number of APs on the optimized Dino is
slimming with shape control and (2) searching for the optimal
reduced from 61 to 18, and the number of APs on the optimized
printing direction, are presented in this section.
Armadillo model is reduced to 1/16 of the original input with 32
APs. Three more examples are shown in Fig. 11. Shape Control in Optimization
We also study the performance and the convergency of the In many cases, the designers may not wish to change the shape
shape optimization algorithm. The statistics about the computa- of a model too much during the optimization for support slimming.
tion of different models are given in Table 2, where the total time This can be realized by adding a penalty factor β , which is an angle
8 K. Hu et al. / Computer-Aided Design 65 (2015) 1–10

Fig. 12. A chart to show the percentage of risky faces compared to the number of
risky faces on the input models.

between 0◦ and 90◦ . Specifically, Lt = R(r̂, θ ′ )M is employed in


the shape optimization as the transformation, where

θ ′ = max(θ − β, 0). (7)


As a result, when a large β is employed, many of the risky faces
will not be rotated (in the cases that θ determined by the local
minimal rotation is less than β ). As shown in Fig. 13, different
values of β result in different degrees of deformations in the shape
optimization for support slimming. In practice, the penalty factor
is used together with two metrics for shape deviation:
• Maximal Node Deviation Ratio (MNDR): This metric evaluates
the maximal displacement at the vertices of the input mesh
model M with respect to the diagonal length of M ’s bounding
box.
• Average Node Deviation Ratio (ANDR): This measures the aver-
age displacement at all the vertices of M with respect to the
diagonal length of M ’s bounding box.
We start from the optimization with β = 0 and evaluate the MNDR
and ANDR on the resultant model. If they are not satisfied, the value
Fig. 13. When different values of the penalty factor β are employed in the
of β is incrementally changed until a result with a satisfactory
shape optimization, results with different maximal node deviation ratios (MNDR)
shape deviation is obtained. In practice, designers usually require and average node deviation ratios (ANDR) can be obtained. If less deformation is
that ANDR is less than 5% or MNDR is less than 15% to control allowed in the optimization, the resultant model may need to add more supporting
the deformation. For the Dinosaurus model shown in Fig. 13, the structures.
desirable β is less than 30°.
some limitations. First of all, our optimizer is based on the assump-
Searching for Optimal Printing Direction
tion that the shape of the original model can be changed. For some
The printing direction is usually chosen empirically by users in
applications in which the original model cannot be deformed, our
accordance with the features on an input model or simply assigned
optimizer is not able to help. Secondly, because we set the goal of
in the bottom-up direction. However, for some models such as the
optimization only at slimming down the supporting structure, the
running Armadillo model shown in Fig. 14, it is not easy to find a
model cannot be converted into a fully self-supported shape. On
heuristic printing direction. Our approach can be employed in the
the other aspect, self-supportiveness usually needs to be consid-
inner loop as a tool to search for an optimal printing direction. Here
ered at the very beginning of the design process. One of the re-
the optimal printing direction is defined as a direction that leads
lated works can be found in [30]. Thirdly, our support slimming
to the minimal number of anchor points (APs) linking supports to
work does not consider the surface damaged on the safe faces by
the main model (Ref. [2]). That means we wish to introduce min-
adding supports for the risky faces exactly above them. Lastly, the
imal damage during the post-process to remove the supports. We volumetric meshes which are coarser than the input mesh mod-
iteratively rotate the input model along the x- and y-axes with a els are used as the computational domain in our approach to pre-
constant angle. For each new orientation, we apply the optimiza- serve the geometric details. On the downside, this also neglects the
tion approach followed by the support generation algorithm, on overhangs inside a safe tetrahedron. We will consider these factors
the result of which the number of APs is counted. Among all the dis- by investigating a method for computing the minimal rotation in
cretely spanned orientations, the one with the minimal AP is finally more complex configurations. Specifically, multiple faces on the in-
chosen as an optimal printing direction (see Fig. 14 for an example). put mesh M inside a tetrahedron will be employed to construct the
DFR on the Gauss sphere. We will study this in our future work.
5.3. Limitation and discussion The success of shape optimization on a coarser volumetric mesh
CT relies on the error between mesh surface of the given model
Although our approach can successfully optimize the shape of and the boundary of CT ; the smaller the better. When a very
given models to slim down the supporting structure, it also has coarse mesh is employed, the ‘optimized’ shape computed from the
K. Hu et al. / Computer-Aided Design 65 (2015) 1–10 9

Fig. 14. Our approach can be computed efficiently on freeform models. As a result, it can be used as a tool to compute the optimal shape for each printing direction. The
number of APs linking supports to the main model can be used as a criterion for selecting the printing direction. Smaller AP leads to less surface damage when removing the
supports in the post-process of printing. We have used the MIP-SLA to print the original model and the model with optimal direction circled by the dashed lines—see the
left column of the fabricated models. Note that, in each orientation, optimization is also taken to further deform the model into an optimal shape. This is different from what
can be obtained by searching with rigid transformations.

volumetric mesh may have more risky faces before computation. a factorization of the normal equation system that can be reused
We prevent such cases by checking the number of risky faces after in the subsequent iterations. As a result, the optimization can be
each iteration, and always store the best result among the past conducted very efficiently. Experimental tests shown at the end of
steps of iteration. How to generate a volumetric mesh bounding the the paper have verified the effectiveness of this approach. The op-
input model more tightly has been beyond the scope of this paper. timized models can serve as useful references for designers when
We consider it to be a work which needs to be taken in the future. self-supportness is an important factor to be considered.
Because the computational domain of our optimization frame-
work is a coarse volumetric mesh, local/global self-intersection Acknowledgments
may be introduced into the volumetric mesh. A post-processing
step needs to be applied to remove self-intersections in such cases The research work reported in this paper was supported by
(e.g., [31]). the Hong Kong Innovative Technology Fund (ITS/247/11 and
In our current formulation, one interior vertex (i.e., v4 ) is chosen ITS/060/13). Ka-chun Chan built the machine for the mask-image-
as the origin of local rotation based on a heuristic consideration. projection based SLA, Yuen-shan Leung implemented the support
The effectiveness of selecting different origins of local rotation can generation algorithm, and the cage-generation program was
be released by using the mean-subtraction strategy in global blend- provided by Chuhua Xian. The authors would like to acknowledge
ing (Ref. [32]). However, in all of our tests, the current implemen- their contribution in this work.
tation converges well when we use one of the interior vertices as
the origin of local rotation. References

[1] Huang P, Wang CCL, Chen Y. Algorithms for layered manufacturing in image
6. Conclusion space. In: ASME advances in computers and information in engineering
research. 2014.
[2] Chen Y, Li K, Qian X. Direct geometry processing for tele-fabrication. ASME J
This paper presents a method for optimizing the shape of a de- Comput Inf Sci Eng 2013;13:041002.
signed model to be fabricated by layer-based AM. When only a sin- [3] Chilson L. Printing with support—extreme overhangs. 2012.
[4] Swift KG, Booker JD. Manufacturing process selection handbook. Elsevier Ltd.;
gle material can be used during the fabrication, two widely used 2013.
types of AM machines, FDM and SLA, both suffer from the problems [5] Pan Y, Zhou C, Chen Y. Rapid manufacturing in minutes: The development
of a mask projection stereolithography process for high-speed fabrication,
caused by the additionally inserted supporting structures. We de- In: Proceedings of ASME 2012 international manufacturing science and
velop an optimization approach based on a local minimal rotation engineering conference. 2012. p. 405–14.
and a global blending. A closed-form formulation is derived in the [6] Bendsoe MP, Sigmund O. Topology optimization: Theory, methods and
applications. Springer; 2003.
local step to determine the minimal rotations in different config- [7] Haslinger J, Mäkinen RAE. Introduction to shape optimization: Theory,
urations. The computation of global blending can be offloaded to approximation, and computation. SIAM; 2003.
10 K. Hu et al. / Computer-Aided Design 65 (2015) 1–10

[8] Prévost R, Whiting E, Lefebvre S, Sorkine-Hornung O. Make it stand: Balancing [20] Botsch M, Kobbelt L, Pauly M, Alliez P, Levy B. Polygon mesh processing.
shapes for 3d fabrication. ACM Trans Graph 2013;32(4):81:1–10. AK Peters; 2010.
[9] Bacher M, Whiting E, Bickel B, Sorkine-Hornung O. Spin-it: Optimizing [21] Igarashi T, Moscovich T, Hughes JF. As-rigid-as-possible shape manipulation.
moment of inertia for spinnable objects, ACM Trans Graph 33 (4). ACM Trans Graph 2005;24(3):1134–41.
[10] Telea A, Jalba A. Voxel-based assessment of printability of 3d shapes. [22] Sorkine O, Alexa M. As-rigid-as-possible surface modeling, In: Proceedings
In: Proceedings of the 10th international conference on mathematical of the fifth eurographics symposium on geometry processing (SGP’07). 2007.
morphology and its applications to image and signal processing. Springer- p. 109–116.
Verlag; 2011. p. 393–404. [23] Liu L, Zhang L, Xu Y, Gotsman C, Gortler SJ. A local/global approach to mesh
[11] Stava O, Vanek J, Benes B, Carr N, Měch R. Stress relief: Improving structural parameterization. Compu Graph Forum 2008;27(5):1495–504.
strength of 3d printable objects. ACM Trans Graph 2012;31(4):48:1–11. [24] Kwok T-H, Wang C. Shape optimization for human-centric products with
[12] Wang W, Wang TY, Yang Z, Liu L, Tong X, Tong W, Deng J, Chen F, Liu X. Cost- standardized component. Comput-Aided Design 2014;52:51–63.
effective printing of 3d objects with skin-frame structures. ACM Trans Graph [25] Xian C, Lin H, Gao S. Automatic cage generation by improved obbs for mesh
2013;32(6):177:1–10. deformation. Vis Comput 2012;28(1):21–33.
[13] Zhou Q, Panetta J, Zorin D. Worst-case structural analysis. ACM Trans Graph [26] Markosian L, Cohen JM, Crulli T, Hughes J. Skin: A constructive approach to
2013;32(4):137:1–12. modeling free-form shapes, In: Proceedings of the 26th annual conference
[14] Umetani N, Schmidt R. Cross-sectional structural analysis for 3d printing on computer graphics and interactive techniques, SIGGRAPH ’99. 1999.
optimization. In: SIGGRAPH Asia 2013 technical briefs. 2013. p. 5:1–4. p. 393–400.
[15] Lu L, Sharf A, Zhao H, Wei Y, Fan Q, Chen X, Savoye Y, Tu C, Cohen-Or D, Chen B. [27] Si H. Tetgen 1.5.0, http://www.tetgen.org. 2013.
Build-to-last: Strength to weight 3d printed objects, ACM Trans Graph 33 (4). [28] Taylor CJ, Taylor CJ, Kriegman DJ, Kriegman DJ. Minimization on the Lie group
[16] Chen Y. Determining parting direction based on minimum bounding box and so(3) and related manifolds, Tech. rep. Yale University; 1994.
fuzzy logics. Int J Mach Tools Manuf 1997;37(9):1189–99. [29] Guennebaud G, Jacob. et al. B. Eigen 3.2, http://eigen.tuxfamily.org. 2013.
[17] Priyadarshi AK, Gupta SK. Finding mold-piece regions using computer graphics [30] Vouga E, Höbinger M, Wallner J, Pottmann H. Design of self-supporting
hardware. In: Geometric modeling and processing. Lecture notes in computer surfaces. ACM Trans Graph 2012;31(4):87:1–11.
science, vol. 2006. 2006. p. 655–62. [31] Wang CCL, Manocha D. Efficient boundary extraction of BSP solids based on
[18] Khardekar R, Burton G, McMains S. Finding feasible mold parting directions clipping operations. IEEE Trans Vis Comput 2013;19(1):16–29.
using graphics hardware. Comput-Aided Des 2006;38(4):327–41. [32] Bouaziz S, Deuss M, Schwartzburg Y, Weise T, Pauly M. Shape-up: Shaping
[19] Li W, Martin R, Langbein F. Molds for meshes: Computing smooth parting lines discrete geometry with projections. Comput Graph Forum 2012;31(5):
and undercut removal. IEEE Trans Autom Sci Eng 2009;6(3):423–32. 1657–67.

You might also like