9
Reduced-Order Shape Optimization Using Offset Surfaces Przemyslaw Musialski * Thomas Auzinger * Michael Birsak * Michael Wimmer * Leif Kobbelt * Vienna University of Technology RWTH Aachen University constant inner offset empty: unstable filled: unstable optimized inner offset empty: stable filled: unstable optimized inner & outer offset empty: stable filled: stable original model © http://www.modelplusmodel.com Figure 1: We introduce a method for reduced-order shape optimization of 2-manifolds that uses offset surfaces to deform the shape. Left: a bottle model is generated using offset surfaces with constant offsets. The resulting object is unable to stand. Center: the offsets are optimized such that the bottle can stand if empty, however, if filled it is unstable. Right: the model is optimized to stand both empty and filled. In order to account for that, offset surfaces are added inside and outside of the original shape. Abstract Given the 2-manifold surface of a 3d object, we propose a novel method for the computation of an offset surface with varying thick- ness such that the solid volume between the surface and its offset satisfies a set of prescribed constraints and at the same time min- imizes a given objective functional. Since the constraints as well as the objective functional can easily be adjusted to specific appli- cation requirements, our method provides a flexible and powerful tool for shape optimization. We use manifold harmonics to derive a reduced-order formulation of the optimization problem, which guarantees a smooth offset surface and speeds up the computation independently from the input mesh resolution without affecting the quality of the result. The constrained optimization problem can be solved in a numerically robust manner with commodity solvers. Furthermore, the method allows simultaneously optimizing an in- ner and an outer offset in order to increase the degrees of freedom. We demonstrate our method in a number of examples where we control the physical mass properties of rigid objects for the purpose of 3d printing. CR Categories: I.3.5 [Computer Graphics]: Computational Ge- ometry and Object Modeling—Curve, surface, solid, and object representations Keywords: geometry processing, geometric design optimization, shape optimization, reduced-order models, physical mass proper- ties, digital fabrication 1 Introduction Today’s geometric modeling software (e.g., Blender) allows for in- teractive design or customization of 3d geometric shapes, and many of them can now be fabricated at home using a low-cost 3d-printer. However, most such items are created in an ad-hoc fashion, i.e., their geometric and physical aspects are usually assumed intuitively or determined empirically with a series of trial-and-error iterations. While this might work well in some cases, it can also turn into a tedious and especially a costly procedure. For this reason, in the approaching age of personal digital fabrication, there is a growing demand for computational tools that not only enable ordinary users to design and 3d-print their everyday objects, but also allow them to optimize their designs for practical usability. In this paper, we provide a novel method for shape optimization of geometric objects defined by 2-manifold surface meshes. The par- ticular problem we are dealing with is to find a new shape that is as similar to an input shape as possible, but which at the same time satisfies various global goals. An example of such a goal is depicted in Figure 1: the bottle is intended to stand upright in a desired posi- tion when filled, however, it would fall over given its current shape. In order to prevent this, our method automatically adjusts the shape of the object, but simultaneously, it tries to preserve its volume, smoothness, and the overall detailed appearance. Technically, we formulate this task as a continuous constrained shape optimization problem, which balances shape preservation against given design goals. We express the shape using offset sur- faces—a simple yet powerful technique where the surface is param- eterized by a vector of offset values applied to each vertex in a cer- tain direction. This parameterization allows deforming the surface both locally and globally, depending on the chosen displacements. We describe the details in Section 4. Since we want to preserve the characteristics of the input shape under deformations as well as possible, we favor displacements of the interior surface of the object if feasible, and penalize displace- ments of the outer surface explicitly. Additionally, and most impor- tantly, we apply only low-frequency changes to the shape, which is perceptually less noticeable than high-frequency modifications, but still has a large influence on global properties, such as the object’s volume and thus mass.

Reduced-Order Shape Optimization Using Offset Surfaces...shape optimization problem, which balances shape preservation against given design goals. We express the shape using offset

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • Reduced-Order Shape Optimization Using Offset Surfaces

    Przemyslaw Musialski∗ Thomas Auzinger∗ Michael Birsak∗ Michael Wimmer∗ Leif Kobbelt†

    ∗Vienna University of Technology †RWTH Aachen University

    constant inner o�setempty: unstable

    �lled: unstable

    optimized inner o�setempty: stable

    �lled: unstable

    optimized inner & outer o�setempty: stable�lled: stable

    orig

    inal

    mod

    el ©

    htt

    p://

    ww

    w.m

    odel

    plus

    mod

    el.c

    om

    Figure 1: We introduce a method for reduced-order shape optimization of 2-manifolds that uses offset surfaces to deform the shape. Left: abottle model is generated using offset surfaces with constant offsets. The resulting object is unable to stand. Center: the offsets are optimizedsuch that the bottle can stand if empty, however, if filled it is unstable. Right: the model is optimized to stand both empty and filled. In orderto account for that, offset surfaces are added inside and outside of the original shape.

    Abstract

    Given the 2-manifold surface of a 3d object, we propose a novelmethod for the computation of an offset surface with varying thick-ness such that the solid volume between the surface and its offsetsatisfies a set of prescribed constraints and at the same time min-imizes a given objective functional. Since the constraints as wellas the objective functional can easily be adjusted to specific appli-cation requirements, our method provides a flexible and powerfultool for shape optimization. We use manifold harmonics to derivea reduced-order formulation of the optimization problem, whichguarantees a smooth offset surface and speeds up the computationindependently from the input mesh resolution without affecting thequality of the result. The constrained optimization problem canbe solved in a numerically robust manner with commodity solvers.Furthermore, the method allows simultaneously optimizing an in-ner and an outer offset in order to increase the degrees of freedom.We demonstrate our method in a number of examples where wecontrol the physical mass properties of rigid objects for the purposeof 3d printing.

    CR Categories: I.3.5 [Computer Graphics]: Computational Ge-ometry and Object Modeling—Curve, surface, solid, and objectrepresentations

    Keywords: geometry processing, geometric design optimization,shape optimization, reduced-order models, physical mass proper-ties, digital fabrication

    1 Introduction

    Today’s geometric modeling software (e.g., Blender) allows for in-teractive design or customization of 3d geometric shapes, and manyof them can now be fabricated at home using a low-cost 3d-printer.However, most such items are created in an ad-hoc fashion, i.e.,their geometric and physical aspects are usually assumed intuitivelyor determined empirically with a series of trial-and-error iterations.While this might work well in some cases, it can also turn into atedious and especially a costly procedure. For this reason, in theapproaching age of personal digital fabrication, there is a growingdemand for computational tools that not only enable ordinary usersto design and 3d-print their everyday objects, but also allow themto optimize their designs for practical usability.

    In this paper, we provide a novel method for shape optimization ofgeometric objects defined by 2-manifold surface meshes. The par-ticular problem we are dealing with is to find a new shape that isas similar to an input shape as possible, but which at the same timesatisfies various global goals. An example of such a goal is depictedin Figure 1: the bottle is intended to stand upright in a desired posi-tion when filled, however, it would fall over given its current shape.In order to prevent this, our method automatically adjusts the shapeof the object, but simultaneously, it tries to preserve its volume,smoothness, and the overall detailed appearance.

    Technically, we formulate this task as a continuous constrainedshape optimization problem, which balances shape preservationagainst given design goals. We express the shape using offset sur-faces—a simple yet powerful technique where the surface is param-eterized by a vector of offset values applied to each vertex in a cer-tain direction. This parameterization allows deforming the surfaceboth locally and globally, depending on the chosen displacements.We describe the details in Section 4.

    Since we want to preserve the characteristics of the input shapeunder deformations as well as possible, we favor displacements ofthe interior surface of the object if feasible, and penalize displace-ments of the outer surface explicitly. Additionally, and most impor-tantly, we apply only low-frequency changes to the shape, which isperceptually less noticeable than high-frequency modifications, butstill has a large influence on global properties, such as the object’svolume and thus mass.

  • Input GoalsInput Shape Preprocessing Optimization Output

    Skeleton and VectorsBasis FunctionsSurface S Stand Upright min f s.t. g S and S

    Figure 2: Overview of our processing pipeline. The input is a shape S and a desired goal, e.g., stable standing in a given pose. In thepreprocessing stage, a set of manifold harmonic basis functions Γk, a contracted skeleton mesh S̆, and a vector field V are computed. In thenext stage, the surfaces are optimized with respect to the given goals f and constraints gi, and finally, an output shape S is generated.

    In order to account for these requirements, we decompose the ge-ometry of the input shape into its particular spectral bands using themanifold harmonic basis [Vallet and Lévy 2008]. In our context,this representation turns out to be remarkably versatile: by project-ing the surface offsets into a subspace of this basis, we obtain anefficient representation of low-frequency modifications that, at thesame time, leave high-frequency details largely intact. Moreover,this approach also serves as an intrinsic regularizer that greatly low-ers the number of degrees of freedom, turning out to be a powerfulorder-reduction technique of the otherwise highly underdeterminedoptimization problem. We provide the details in Section 5.

    Our proposed solution is fast, lightweight, numerically stable, andeasy to integrate into common 3d modeling software, making it wellsuitable for practical optimization of global shape properties: for in-stance, enforcement of mass moments [Bächer et al. 2014] or struc-tural optimization [Lu et al. 2014]. While the latter usually alsoinvolves the finite-element discretization of the shape and needs tobe evaluated numerically, the former can be expressed as integralsover the object’s surface. Since these can be elegantly computedanalytically, we utilize them to demonstrate the applicability of ourproposed reduced-order shape optimization approach in Section 6.

    In summary, our contributions are the following:

    • We provide a flexible and robust novel framework for the con-tinuous optimization of 2-manifold surfaces, which aims tosatisfy global objectives by displacing an offset surface de-rived from a given initial shape.

    • We provide an elegant and efficient basis-reduction approachthat is numerically robust and speeds up the computation con-siderably by making the number of optimization variables in-dependent of the mesh resolution.

    • We demonstrate the applicability of our approach by control-ling the mass properties of a rigid body enclosed between aninner and an outer offset surface.

    2 Related Work

    Design Optimization Problems. Design optimization problemsaim at the automatic computation of structural or mechanical de-signs that suit some desired (global) goals. They have been stud-ied in computational industrial design as form-finding problems,as well as in statics and mechanical engineering as structural opti-mization problems [Haftka and Gürdal 1992]. In computer graph-ics, recent approaches provide algorithms for improving modelsfor 3d printing, like the computation of structural stability [Stavaet al. 2012], worst-case structural analysis [Zhou et al. 2013], cost-effective material usage [Wang et al. 2013], or optimization of boththe strength and weight of printed objects [Lu et al. 2014].

    Various methods have been proposed that integrate computationaldesign into interactive modeling tools in order to solve specific

    problems. For instance, interactive systems for various manufactur-ing planning tasks, like garment editing [Umetani et al. 2011], de-sign of physically valid furniture [Umetani et al. 2012], articulated3d-printed models [Bächer et al. 2012], mechanical assemblies, liketoys [Zhu et al. 2012] and various moving characters [Coros et al.2013; Thomaszewski et al. 2014], or construction of inflatable bal-loons with desired shapes [Skouras et al. 2012] have been proposed.Another example is material design, where the specification of adesired deformation behavior can be given a priori, and the com-posite material with respective elastic behavior is computed by op-timization [Bickel et al. 2010]. This approach was also extended tothe construction of balloons with prescribed shape [Skouras et al.2012], and for the manufacturing of synthetic clones of human faces[Bickel et al. 2012].

    Reduced-Order Models. Order-reduction approaches aim atlowering the dimensionality of the parametric space of a computa-tional problem while preserving its input-output behavior as muchas possible. Their goal is in general to gain performance. In thearea of physically based deformation and animation, the idea ofusing vibration modes of a body for order reduction has been pro-posed by Pentland and Williams [1989]. This approach has beenfurther explored for efficient interactive animation [Kim and James2009] and shape deformation [von Tycowicz et al. 2013]. In geom-etry processing, space and surface deformation methods based onskinning between handles or cages are reduced-order approaches.The idea is to express the problem with respect to few handles thatdefine a subspace, and to interpolate or approximate the overall de-formation [Botsch and Kobbelt 2004; Sumner et al. 2007; Jacob-son et al. 2011]. In mesh processing, multi-resolution modeling[Kobbelt et al. 1998] can be seen as an example of order reduction.

    Computation of Mass Properties. The computation of globalmass properties has a long tradition in the modeling and CAD com-munities, since from the beginning of computerized modeling, ex-act parameters of modeled objects were of great importance for an-imation, simulation, as well as manufacturing. Two early workspioneered the idea to utilize Gauss’s Divergence Theorem for thecomputation of mass moments of polyhedral objects [Messner andTaylor 1980], and parametric bi-cubic spline patches [Timmer andStern 1980]. Recently, it has been utilized for the optimization ofmass properties of 3d-printed models [Prévost et al. 2013; Bächeret al. 2014; Christiansen et al. 2015], which we also demonstrate inthis paper.

    3 Problem FormulationIn this section we present the general concept of our shape opti-mization approach. The basic idea is to interpret the shape as asolid enclosed between two surfaces, where each can be deformedby the application of offsets with spatially varying thickness.

    Definitions and Notation. As input to our method, we expect a3d shape represented as a closed oriented 2-manifold surface S =

  • (X,T), which in practice is a triangle mesh composed of n verticesx ∈ X and a set of triangles T. Usually, the surface is the boundaryof a solid body. Alternatively, the input can be an inner and an outersurface enclosing a solid between them.

    Depending on the desired optimization task, our method can outputa single offset surface or two complementary offset surfaces, oneoriented to the outside and one to the inside of the input shape,where we denote the outer one as S, the inner one as S, or bothtogether as S. For simplicity, we explain the concepts by using theouter surface S, except where both surfaces are involved. Figure 2provides an overview.

    Offset Surfaces. Each output surface is created by adding anoffset value δ in a direction v at each surface vertex x, such thatx = x + δv, where v ∈ V is a direction vector from a vector fieldV, δ ∈ R is a scalar that provides the magnitude and the sign ofthe shift, and x ∈ X is a vertex of the offset surface S. One ob-vious choice for V would be the surface normal field N, however,general offset surfaces are not limited to this choice, and we use avector field derived from iterative surface contraction as describedin Section 4.

    In the following, the vertices x of a mesh are organized in a ma-trix X, displacement vectors v in V, and the scalar offsets δ in thevector δ.

    Optimization Problem. Assuming a given vector field V, ourgoal is to find the n optimal offsets δ such that the shape satis-fies a given objective. In order to remain general, we first define atemplate functional for the resulting optimization problem as

    ES = minδf(δ) s.t. gi(δ) 6 0 and δl � δ � δu , (1)

    where f is the objective function, gi are additional hard equalityand/or inequality constraints, and δl and δu are lower and upperboundary constraints. For instance, f could be the goal to lower thez-position of the center of mass of an object, and g could be the con-straints to keep the center of mass in a certain xy-region. Boundaryconstraints are needed to prevent offset surfaces from intersectingeach other or from reaching other implausible values.

    The functions f and gi are usually non-linear in the deformation ofthe surfaces, making the problem a non-linear programming task(NLP), which can be generally approached with existing standardnumerical routines. However, a significant disadvantage of this for-mulation is that the problem is highly underdetermined, i.e., thereusually exist many offset surfaces that satisfy the equation. Evenworse, the number of offsets δ equals the number of vertices (i.e.,n), and therefore it is high-dimensional and scales badly with in-creasing mesh resolution. In other words, the problem is redun-dant and expensive to solve, hence, barely suitable for practicalpurposes.

    As a major contribution of this paper, we introduce a reduced-orderformulation that provides a remedy for these issues. Our solu-tion is to project the problem onto a lower-dimensional basis de-termined by manifold harmonics [Vallet and Lévy 2008], where wecan solve it more efficiently using standard numerical routines—independently of the number of input vertices. In Section 5 wepresent the details of this approach.

    4 Offset Directions and BoundsOne significant problem of offset surfaces for 2-manifolds is thattoo large displacements may cause the target surface to penetrateitself and lose its 2-manifoldness, becoming unusable for practicalapplications (cf. Figure 3, middle).

    Such self-intersections can be either local or global. Local fold-overs appear if, at any point of the surface, the orthogonal distance

    S

    S

    SS

    V

    Figure 3: Left to right: inner and outer offset surfaces with in-creasing offset to the original. Middle: note the self-intersectionswhere offsets get too large. Right: medial axis as a global boundfor maximal offset.

    of the offset to the surface becomes equal or higher than the radiusof the maximal principal curvature κmax. Global self-intersectionshappen if offsets from distant regions of the surface intersect in theinterior or within concavities. These problems can be approachedusing the shape skeleton as the upper bound for the displacements(cf. Fig 3, right). If it is appropriately chosen, i.e., it approximatesthe medial axis, which is the set of all centers of spheres that touchS in at least two points, and the offsets do not exceed it, both globaland local self-intersections can be avoided.

    Shape Skeleton. Since we are working with piecewise linear tri-angle meshes, in practice, the medial axis is neither easy to computeexactly, nor is it necessarily smooth at sharp corners. For this rea-son, we strive for an approximation that is robust to compute andprovides smooth skeletons.

    We adapt the idea presented by Tagliasacchi et al. [2012], where theoriginal surface is contracted iteratively using constrained Lapla-cian smoothing until it converges to a skeleton S̆. The advantageof this method over other solutions is that it is much less sensitiveto surface detail and that it provides quite smooth skeleton approx-imations, even at sharp corners of the input shape (cf. Fig. 4, left).Recursive application of the contraction scheme results in a meshthat converges to a one-dimensional curve, but in early contractionstages, it forms a so-called meso-skeleton S̆, which approximatesthe medial surface. That surface is especially useful in the case ofcomplex objects (cf. Fig. 4, right), since it helps keep a one-to-onecorrespondence with the vertices.

    Figure 4: Left: Two examples of skeletons with a direct one-to-onecorrespondence between outer and inner vertices and the resultingvector field. Right: two meso-skeletons (cf. Section 4).

    4.1 Offset Vectors

    Inner Offset Vectors. By keeping track of the correspondencesof the input mesh vertices x to the skeleton vertices x̆, we obtain asurjective correspondence between S and S̆ (Fig. 4). We can nowderive the vectors for inner offsets as v = v̆/‖v̆‖, with v̆ = (x̆−x).Please note that these vectors point inwards, and are not necessarilynormal to the surface. However, since they were created by con-secutive contraction, they are rather smooth and provide naturallysuitable trajectories for surface offsets.

    Outer Offset Vectors. For the direction of outer offsets we have,among others, the choice of taking the outward-pointing normalvectors v = n of the input mesh, or taking the inverse contrac-tion vectors v = −v. Usually we favor the latter option, since the

  • Figure 5: Left: sur-faces are offset indepen-dently. Right: the holehas been constrained tohave no offsets.

    contraction vector field is of rather low frequency and thus less sen-sitive to fine details of the input surface than the normals, which canexhibit many high-frequency fluctuations.

    4.2 Offset Bounds

    Maximal Bounds. Given the offset vectors, we can use them toprovide constraints for minimal and maximal displacements δl andδu. In the case of inner offset surfaces S, we obtain the individualmaximum displacement values as δu =

    [|v̆1| |v̆2| . . . |v̆n|

    ]T , whichis the ‘safe’ distance to the skeleton. The choice of the outer off-sets δu is usually not as critical, since we try to keep the shape ofthe object as similar to the input as possible. We therefore set itto a low value, which can be adjusted for particular models indi-vidually. However, self-intersections can still happen as shown inFig. 3, right.

    Minimal Bounds. In the case of a double surface S, it is oftenof interest to provide a minimal or maximal distance between thesurfaces. For instance, it is often necessary to meet practical fab-rication considerations, e.g., 3d-printer resolution. However, sincethe offset vector field is in general not orthogonal to the surface,these values cannot be measured directly along it. In order to stillallow for such constraints, we project the desired minimal thicknessvalues in the normal direction δln onto particular vectors v to get aminimum offset in direction of the vector v: δl = 1vTnδln , wheren is the unit surface normal. Thus, the minimal distances between

    S and S along V in both directions are given by δl =[δl

    T δlT]T

    .

    Geometric Bounds. An additional option we provide are explicitgeometric constraints that allow forcing selected regions to desiredoffsets. Technically, we accomplish this by overriding the selectedoffsets δ̂ ⊂ δ by setting them to desired values. Especially, bysetting δ̂ = 0, regions obtain no displacement, which is of interestif the surfaces S and S should be forced to coincide, which createsopenings without affecting the volume (cf. Figure 5).

    Offset Penalty. In order to preserve the visible shape, outer off-sets could be suppressed by adding their squared sum to the objec-tive, weighted bywp: wp‖δ‖

    22. Moreover, this type of penalization

    could be applied to any other subset of the displacements δ, or usedas regularization, as discussed in Section 7.1.

    5 Order ReductionIn this section we introduce an efficient order reduction for the op-timization problem stated in Equation (1) by transforming it into aspectral representation denoted as manifold harmonics.

    5.1 Manifold Harmonics

    Essentially, manifold harmonics resemble the bases of the Fouriertransform on meshes with arbitrary topology [Taubin 1995], andexhibit a set of advantages we can exploit: first of all, if appropri-ately chosen, they are orthogonal, making the basis transformationa numerically stable operation. Second, they are smooth, allowingfor well-defined continuous optimization. Finally, in terms of an ar-bitrary manifold mesh, they have the advantage that they “encode”the geometry and topology of the original object [Levy 2006], suchthat their extrema usually lie at geometrically exposed locations andcapture the intrinsic symmetry of the shape [Zhang et al. 2010]

    Discrete Laplace-Beltrami. The manifold harmonic functionscan be computed as the eigenfunctions of the Laplace-Beltrami op-erator ∆S of the input surface. This operator is a generalization ofthe Laplacian operator to 2-manifolds and allows performing differ-ential operations on surfaces. Generally, it is defined as the diver-gence of the gradient, i.e., the sum of second partial derivatives ofa parameterized surface. However, in a discrete setup, the Laplace-Beltrami operator L can be derived as the umbrella operator directlyfrom the mesh, without the usage of a parameterization.

    In the literature, there are a number of propositions how to dis-cretize the differential operator. In our implementation, we followPinkall and Polthier [1993] due to its symmetry:

    Li,j =

    ωi,j if (i, j) ∈ E∑

    k∈N(i) −ωi,k if (i = j)0 otherwise ,

    (2)

    where E denotes the set of edges, and N(i) is the set of first-orderneighbors of vertex i. The weights ωi,j are computed using thegeometric properties of the mesh, in particular:

    ωi,j =12(cotϕli,j + cotϕ

    ri,j

    ),

    where ϕli,j and ϕri,j are the angles opposite to the edge (i, j) in the

    left and right incident triangles respectively.

    Harmonic Basis. We have chosen this operator because it is sym-metric and positive semi-definite, thus, respecting the spectral the-orem, all its eigenvalues λi are real and non-negative (i.e., λi > 0),and all eigenvectors γi are mutually orthogonal, and can be furtherorthonormalized such that ∀ i : ‖γi‖2 = 1. They can be computedby the diagonalization L = ΓΛΓT , where the diagonal entries ofthe matrixΛ are the eigenvalues λi, such that λ1 6 λ2 6 . . . 6 λn,and the columns of the matrix Γ =

    [γ1 γ2 . . . γn

    ]are the respec-

    tive eigenvectors. From the functional analytic point of view, theeigenvectors become the eigenfunctions, and since they satisfy theLaplace equation, they are denoted as harmonics.

    The basis functions[γ1 γ2 . . . γn

    ]correspond to the lowest to

    highest frequencies of the input mesh, thus the first few functionscapture the global shape appearance and the remaining ones cap-ture the details. For this reason, a low-frequency base surface canbe well approximated using only the first few components.

    In practice, the computation of the full diagonalization of a largematrix is a significant computational challenge. However, since weare only interested in a reduced set of k bases, there exist a num-ber of efficient algorithms that can be utilized for our purpose verywell. We have used the implementation from the ARPACK library[Lehoucq et al. 1998]. An additional advantage is that we only needto compute them once per mesh.

    5.2 Reduced Optimization Problem

    The main idea of order reduction is to represent the offsets δ in themanifold harmonic basis. This allows us to significantly reduce theorder of the problem. Simultaneously, adjusting the low frequenciesonly enables us to perform desired changes of the overall shapewhile still preserving the local details.

    In order to achieve this, we express the offset surface S as a linearcombination of a set of k eigenfunctions Γk =

    [γ1 γ2 . . . γk

    ]:

    xi = xi +

    k∑j=1

    αjγij vi ,

    where αj are elements of the unknown coefficient vector α ∈ Rk,and the problem now reduces to finding that vector. This drastically

  • lessens the degrees of freedom of the problem, and also serves as animplicit regularization (discussed in more detail in Section 7). Wecan now write the optimization from Equation (1) in terms of α as

    ES = minαf(α) s.t. gi(α) 6 0 and δl � Γkα � δu , (3)

    which has the benefit of resulting in k � n optimization un-knowns. Please note that this number is independent of the meshresolution—only the number of chosen harmonic bases is relevant.In our experiments, most offset meshes can be approximated ade-quately with k 6 36 basis vectors (cf. supplemental material).

    The geometric constraints can be enforced by truncating the cor-responding basis functions, such that ∀j : γij = 0. The result isthat during the optimization, the changes in α have no effect onthe selected vertices vi. Hence, we can also relax the respectivebox constraint to δli = −∞ and δui = +∞ such that they wouldbe able to develop freely. While the surface loses the smoothnessat those vertices, the final result is not affected, since we overridethem with the desired values.

    Finally, the harmonic basis also allows us to provide an option topenalize the outer displacements in order to preserve the originalshape of the object. We do this by minimizing the squared mag-nitude of the coefficient α1, where we weight the strength of thepenalty with wp:

    ES = minα

    (f(α) +wpα

    21

    ).

    Since the first element corresponds to the constant zero-frequency(DC element), it changes the volume, while the other componentscontain the detail, but have zero mean.

    5.3 Analytic Gradient

    Given an objective function f that can be differentiated w.r.t. thesurface vertices X analytically, our formulation of shape optimiza-tion using offset surfaces allows for a closed-form analytic compu-tation of the gradient of the functional in Eq. (3). Thus, a majoradvantage of our formulation is that the gradient can be calculatedby repeated application of the chain rule as

    ∇ES =∂f

    ∂α=∂f

    ∂X

    ∂X

    ∂δ

    ∂δ

    ∂α,

    where X =[x1 y1 z1 x2 y2 z2 . . . xn yn zn

    ]T are the n verticesof the original surface concatenated into a 〈3n× 1〉 vector, and δis the 〈n× 1〉 vector of corresponding scalar displacements.The derivatives ∂f/∂X with respect to surface vertices X result in a〈1× 3n〉 vector. The derivatives of ∂X/∂δ result in a sparse matrixof the size 〈3n× n〉, which contains in each column the respectivedisplacement vector v. Eventually, the derivatives ∂δ/∂α are theharmonic basis vectors Γk, which form a 〈n× k〉 matrix. The finalpartial derivatives of the objective ∂f/∂α with respect to α thusreduce to a 〈1× k〉 sized vector. The derivatives for the constraintfunctions gi can be computed accordingly.

    Please note that the given matrix sizes are with respect to only one-sided displacement with k coefficients. For two-sided offsets, thematrices need to be extended accordingly, which is explained inmore detail in the supplemental material.

    6 Applications and Results

    6.1 Control of Mass Properties

    We demonstrate the application of our method by optimizing massproperties of a solid. In particular, the physical mass moments of arigid body are attributes that determine how an object behaves under

    the influence of mechanical forces, e.g., gravity, torque, etc. Themoments of zeroth, first, and second order of a rigid object definedby its surface S describe the total mass m(S), the center of massc(S), and the symmetric 〈3× 3〉 tensor of inertia I(S), respectively.We summarize these 10 properties as

    P(S) =[m cx cy cz Ixx Iyy Izz Ixy Iyz Izx

    ]T . (4)The tensor of inertia I(S) is symmetric and contains the quadraticterms, denoted as moments of inertia, on the diagonal, and themixed terms, denoted as products of inertia, on the off-diagonals.Please refer to the supplementary material for a derivation and fur-ther details. While the physical mass moments are integrals overthe volume of the solid, uniform mass density and Gauss’s Diver-gence Theorem allow evaluating them as functions of the boundarysurface of the solid S = {X,T}, which we also describe in detail inthe supplementary material.The object’s mass m relates to its volume V by m = ρV , whereρ is the material density coefficient. Without loss of generality,for solid objects with uniform mass density distribution, we canassume ρ = 1. Note that in the following, all mass densities aregiven relative to the object mass density, i.e., all are divided by themass density of the object, and the density of air is set to 0.

    6.2 ObjectivesWe provide a number of specific sets of objectives and constraintsin order to fulfill certain tasks that require the control of mass prop-erties. Often, we want to control the static and rotational stabilityof shapes. These goals can be specified by placing the object in theorigin of the world coordinates in the desired pose.

    model © http://www.modelplusmodel.com model © http://archive3d.net Horse (by Gian Lorenzo)

    Figure 6: Examples of static stability optimization. The dashedlines indicate the center of mass of the entire solid, the thick linesthe ones of the shell after optimization.

    Static Stability. An object stands stably if the orthogonal pro-jection of its center of mass c on the ground plane lies within theconvex hull defined by the object’s ground contact points. We placethe object in the xy-plane such that the centroid of the convex hullis in the origin, and we optimize the following objective:

    f(α)static := c2x + c

    2y + cz ,

    gi(α)static := (cx + cy)2 − (r − ε)2 6 0 , cz > 0 ,

    (5)

    where r is the radius of the largest inscribing circle of the convexbase polygon, and ε is a safeguard (cf. Figure 6).

    Static Stability under Storage. A storage container alters itsmass properties when the initial void is filled with the storedmedium. To ensure static stability in both states, we optimize boththe empty and the filled container. Assuming a uniform mass den-sity ρ of the stored medium, the mass of the empty and filled con-tainer is given by mempty = m(S) and mfull = mempty + ρV(S)respectively. The center of mass of the empty and filled containeris given by

    cempty = c(S) and cfull =memptycempty + ρV(S)c(S)

    mfull. (6)

  • We now optimize these centers of mass simultaneously by applyingobjective (5) to both. Figure 1, right, depicts a leaning bottle thathas been optimized to stand stable if filled with water.

    original model © http://cyberware.com

    Figure 7: A roly-poly toy designed with our method. The center ofmass (black dot) is placed below the center of the hemisphere at thebottom of the object (red dot). When pushed, a righting momentcorrects the pose (left) until the equilibrium position is reached(center). A rendering and a fabricated replica is shown on the right.

    Monostatic Stability. An object is called monostatic if it has onlya single stable resting position. If perturbed, its shape and innermass distribution produces a righting moment that returns it to thisequilibrium position. A common application of this principle areroly-poly toys. As shown in Figure 7, they commonly consist ofa hemispherical element at the bottom and a figurine on top. Thecorrect righting behavior is obtained when the center of gravity clies below the hemisphere center, so we optimize a variant of (5):

    f(α)static := cz ,gi(α)static := { cx , cy } = 0 , cz − r + ε < 0 ,

    (7)

    where r denotes the radius of the hemisphere and ε acts as a safe-guard against tolerances in the fabrication process, which couldraise a center of gravity that is placed just below the hemispherecenter (cf. Fig. 7).

    model © http://www.cgtrader.com (DrGlassDPM)

    Figure 8: A spinning turtle model. Left, the original model, right,an object optimized for spinning.

    Rotational Stability. An object rotates stably about an axis if theaxis is its smallest or largest principal axis of inertia [Goldstein et al.2002]. Hence, we place the object in a coordinate frame in a posewe want it to spin, with ~z as the up and rotation axis (see Fig. 13).Then we optimize the body such that its principal axis equates therotation axis with moment Ic = Izz, and such that the cross termsIxz and Iyz vanish. Here we adapt the objective as recently pro-posed by Bächer et al. [2014]:

    f(α)inertia := mcz +

    (Ia

    Izz

    )2+

    (Ib

    Izz

    )2,

    gi(α)inertia := { cx , cy , Ixz , Iyz } = 0 , cz > 0 .(8)

    In general, the remaining moments of inertia Ixx and Iyy do notcoincide with the coordinate frame axes. We obtain the principalaxis moments Ia and Ib as the eigenvalues of the 〈2× 2〉 upper-leftpart of the inertia tensor I:

    { Ia , Ib } =12

    (Ixx + Iyy ∓

    √I2xx + 4I2xy − 2IxxIyy + I2yy

    ).

    model © http://www.turbosquid.com (amarkin)

    Figure 9: An object optimized for buoyancy in a liquid of a specificdensity ρ. By adding a void with appropriate shape and volumeinside the object, buoyancy can be achieved. Left: input model,center: optimized shape, right: 3d-printed example.

    Specific Volume and Buoyancy. Our method allows the cre-ation of objects whose inner void should exhibit a specific volume.Given a target volume V , its difference to the volume of the void isgiven by (V − V(S)) and can be penalized either in the objectivefunction or enforced by a constraint.

    A more complex application of this capability is to control the buoy-ancy of an object. To ensure static stability of an object that isimmersed in a fluid, its gravitational and buoyant forces shouldbe at equilibrium in the desired orientation of the object. We as-sume for simplicity that our object is incompressible and com-pletely submerged in a fluid with a uniform mass density ρ < 1with downward gravity g = −g~z. A buoyant force V(S)g~z isexerted on the center of buoyancy cbuoy = c(S), while the grav-itational force −m(S)g~z acts at the center of gravity c = c(S).Equilibrium is established if the magnitudes of the forces cancel,i.e., 0 = V(S)ρg − m(S)g = (ρ − 1)V(S) + m(S), and if notorque is produced on the object, i.e., cbuoy,x = cx and cbuoy,y = cy.Furthermore, a stable equilibrium is only reached if cbuoy,z > cz.Otherwise, the object would flip upside down. For a floating object,we consequently optimize

    f(α)buoyancy :=((ρ− 1)V(S) +m(S)

    )2,

    gi(α)buoyancy := { cx − cbuoy,x , cy − cbuoy,y } = 0 ,cz < cbuoy,z .

    (9)

    A result of an object optimized for buoyancy is provided in Fig. 9.

    6.3 Implementation

    Implementation. We implemented the optimization frameworkusing MATLAB 2014a and C++, where we utilized the LIBIGLlibrary [Jacobson et al. 2014] for some computations. For thecomputation of skeletons we used the CGAL implementation of[Tagliasacchi et al. 2012]. For the computation of the eigendecom-position, we utilized the sparse function eigs, which implementsthe ARPACK routines [Lehoucq et al. 1998]. For the constrainedNLP-problem, we used the MATLAB Optimization Toolkit usingfmincon, in particular the constrained medium-scale active-setsolver, however, it also works well with the large-scale interior-point solver, or could be easily plugged into another numerical rou-tine. Our experimental MATLAB/C++ code will be available onthe paper web page.

    Timings. The preprocessing timings lie generally in the range ofseveral seconds. In particular, the convergence time of the skeletondepends on the chosen parameters, but it usually ranges between5−30s. The longest computation we observed was the Horse model(cf. Figure 6, 86k vertices) with 84s. The computation of the sparseLaplacian and its eigenvectors depends on the chosen k, but evenfor large meshes (e.g., the Horse with k = 36), it takes less than4s to compute. The optimization time for our examples is usuallybetween a few seconds in simple cases (e.g., Bottle in Figure 1), upto few minutes for more complex examples (e.g., Horse 3.8min).Timings were taken on an Intel(R) Core(TM) i7-3770K [email protected]

  • GHz with 32 GB RAM running Windows 8; please refer to thesupplemental material for detailed timings.

    Fabrication. We have 3d-printed several models using different3d-printers: a MakerBot Replicator 2 for early testing, a Dimen-sion uPrint Plus for prototyping and most of the results, and finallyalso an Objet Eden 260 for poly-jet prints for high-quality results.Since the FDM prints are in general not entirely watertight, we im-pregnated them with a clear-coating material. Our models workedwell with these printers, however, usually they needed to be cutinto pieces in order to be printed with support material, and gluedtogether after a base-bath. We performed the cutting manually us-ing a standard modeling software, but also automatic methods forthe partitioning of objects [Luo et al. 2012] are available.

    7 Discussion

    7.1 Harmonic Basis FunctionsBasis Dimensionality. The number k of basis-functions allowsa trade-off between reduced runtime and increased robustness onthe one hand and a solution closer to a reference optimum on theother. For an evaluation, we compare the reduced-order results to astraightforward shape optimization of each individual vertex.

    0

    1

    2

    3

    4

    5

    9

    11

    13

    15

    17

    19

    10 18 26 34 42 50 58 66 74 82 90 98

    time

    [s]

    obje

    ctive

    f

    f f_ref time

    Figure 10: Number of used basis functions k compared to the ob-jective value (orange), processing time (blue), and a reference ob-jective (brown). The reference is fref = 11.28 and tref = 87s. Theobject has n = 750. The results with a low number of basis func-tions (shaded region) did not converge within the posed constraints.

    In Figure 10, we plot the value of the objective f versus increas-ing values of k measured on the object shown in Figure 11 withn = 750 and the objective (8). If too few basis functions are cho-sen, the constraints cannot be fulfilled, such that a solution doesnot exist (shaded area). However, already a small number of modes(k = 34) permits a solution that is remarkably good and fast to ob-tain. Thus, a further increase in k only yields minute improvementswhile increasing the computation time.The speedup of our algorithm is in any case significant. If we opti-mize the shape with 34 basis functions (the dashed vertical line inFig. 10), we obtain a very good approximation within 0.44 seconds,compared to 87 seconds for the full solution, which is a speedup of2 orders of magnitude. Indeed, in practice, the speedup for largemodels (i.e., n >> 1000) is even higher, since the full per-vertexcomputation of such models takes hours or even days.We have also computed the optimal shape using a full set of basisfunctions (k = n). We obtained the same optimality value (f =11.27) at a runtime of 93s, and a surface very similar to the onedelivered by the full solution in the Euclidean space (cf. Figure11, right). This is to be expected, since the problem is in theorythe same, the differences of the final geometry are due to numericalapproximation errors. Thus, the general conclusion is to choosethe number k low; only sufficiently high to express the shape withthe necessary number of degrees of freedom needed to fulfill theconstraints.

    full k=34 k=94 k=n

    f=11.3 f=14.6 f=12.0 f=11.3t=87s t=0.4s t=4.4s t=93s

    Figure 11: Results of the evaluation in Figure 10 with n = 750.Left to right: result of the full method, results with increasing k.

    Regularization. An important aspect of our solution is an im-plicit regularization. Since the full problem is highly underdeter-mined, there exist many solutions, and the finally obtained oneis not necessarily very smooth, as depicted in Figure 11, left.This problem could be approached with Tikhonov regularizationby adding an additional termwr‖δ‖22 to the objective, which wouldfavor small displacements and make the problem fully determined,however, at the cost of its size and computation time. Additionally,we found the results still not smooth. In contrast, using a smallnumber of harmonics allows us to express the displacement withlow-frequency basis functions, such that each approximated resultprovides a smooth surface in the Laplacian sense.

    Choice of the Basis. We have chosen the Laplacian as in (2)since it reflects the object’s geometry, and it is symmetric positivesemi-definite. However, there are other possible approximations ofmanifold harmonics, as for instance discussed by Vallet and Levy[2008]. We have experimented with them and found that a moreaccurate discretization of the operator results in a better shape ap-proximation and faster convergence. Thus, a detailed investigationof this issue would be a possible direction for future work.

    Surface Detail. A final point to note is that the outer offset sur-faces themselves retain the detail of original surfaces. This is be-cause only the offsets are projected to a low-frequency space, notthe surface itself.

    7.2 Comparisons

    In Figure 12, we show a comparison to the state-of-the-art in theform of Make-It-Stand [Prévost et al. 2013], which we use withoutouter-surface deformation by removing the scaling and deformationterms and performing the plane-carving algorithm only. We alsoset the wall thickness in our case to a similar distance as the lowestpossible 1 voxel in the other method. The figure shows that in thiscase, our method indeed approximates the interior void better andprovides slightly more stable mass properties:

    our: f = 2.52 , m = 21.7 , c = [ 0.63 0.0 2.13 ] ,ref: f = 2.96 , m = 26.1 , c = [ 0.78 0.0 2.35 ] .

    original model © ETH Zurich, used with permission

    Figure 12: Comparison with the method of [Prévost et al. 2013]without outer deformation of the shape. Both results achieve staticstability as evidenced by their fabricated replicas (right), however,our method provides a slightly better result.

    In Figure 13 we show a comparison of our method with the one ofBächer et al. [2014]. We set k = 24, and also in this case onlythe optimization of the interior has been used in both cases. Ourmethod converged in 6.8s. Below, we provide the mass moments

  • of both results, where we can see that we achieve nearly identicalvalues as the reference, while providing a smooth inner surface:

    our: f = 11.4 , P = [ 1.07 | 0 0 1.13 | 0.35 0.41 0.52 | 0 0 0 ],ref: f = 8.16 , P = [ 1.20 | 0 0 1.13 | 0.34 0.36 0.57 | 0 0 0 ].

    original model © Disney Research, used with permission

    Figure 13: Comparison with Spin-It [Bächer et al. 2014]. Theinput unstable spinning top is optimized using their (far left) andour method with k = 24 (center left). Right: fabricated results.

    7.3 Limitations

    Deformation Limitations. Other approaches [Prévost et al. 2013;Bächer et al. 2014] utilize linear blend skinning (LBS) withbounded biharmonic weights [Jacobson et al. 2011] for the adjust-ment of the objects’ shapes. Using this type of deformation withwell-defined similarity transformations (scale, translation, rotation)enables their methods to deform the model in a meaningful mannerwith more degrees of freedom than given by our outer displacement.Additionally, careful manual placement of control handles enablesthe user to influence the deformation semantically, i.e., by addinghandles to the extremities of articulated objects, the system can ex-plicitly account for their pose [Prévost et al. 2013]. In contrast,even if the basis functions have global support, our displacementcan deform the shape only along a predefined vector field, whichis a much more restricted shape-editing operation, and it cannotchange the objects’ pose (cf. Figure 14).

    Boundary Constraints Limitations. The presented optimiza-tion pipeline is in general very robust. However, the algorithmalso depends on the quality of the provided skeleton. We haveexperimented with several approaches, and found the solution ofTagliasacchi et al. [2012] to be the most reliable, since it providesan approximation of the medial surface, denoted as meso-skeleton,that is a trade-off between the medial axis and a smooth 1d skele-ton. Nonetheless, their approach still requires tuning of parameters.This issue is crucial, since the offset surface is shifted along vectorstoward the skeleton, hence there must exist a surjective (in the con-tinuous sense) mapping between S and S̆. If the vectors v̆ intersector cross the boundary in any way, our method can produce artifacts.This can happen at fine details, where the skeleton approximatesthe surface too roughly, as in the case of the fingers of a hand.

    Design Space Limitations. Our solution space is limited by thedegrees of freedom provided by the k manifold harmonics, thusany better optimum that lies outside of this space cannot be reached.Moreover, the usage of a constant shape skeleton as an upper boundfor inner displacements additionally limits the design space, suchthat potentially valid solutions that require crossing of the medialaxis cannot be reached. Finally, problems where multiple voids arenecessary to achieve a good optimum are not well served with ouralgorithm. Space carving methods that perform global topologyoptimization are potentially more flexible for problems where mul-tiple voids are needed, since their solution space is generally biggerand not limited to one surface.

    7.4 Fabrication Considerations

    Print Time and Support Material. We observed that smoothmodels need less support material and have lower print times than

    orig

    inal

    mod

    el ©

    Sta

    nfor

    d Co

    mpu

    ter G

    raph

    ics

    Labo

    rato

    ry

    Figure 14: Example of static stability optimization of a complexmodel. From left to right: meso-skeleton, outer shape with centerof mass, inner surface only, inner and outer surface optimization.The inner surface result has a too thin wall to be printed. The outersurface offset solves this problem.

    the voxelized models for FDM. This is basically due to the factthat voxel-bottoms that are parallel to the ground plane need fullsupport, while smooth surfaces are self-bearing up to a certain de-gree. Moreover, the total distance traveled by the printer head isshorter on smooth curves than Manhattan-distance voxels. In a di-rect comparison with the work of Prévost et al. [2013] using theresults shown in Figure 12, our approach cuts both the support ma-terial and the print time roughly by half. Further details can befound in the supplementary material.

    Material Density Issues. In practice, we found that the materialdensity values as presented by manufactures (e.g., ρABSplus = 1.04)do not necessarily apply to the printed models. This is due to thefact that FDM-fabricated solids have a large number of micro-holesintegrated in the massive. These holes can be filled with air or water(especially after base-bath for support dissolution), changing theactual density of the mass. This problem has also been addressed byChristiansen et al. [2015]. We resolved it by coating wet models,which stabilized their density.

    8 ConclusionsWe have presented a novel method for shape optimization of aninput object represented by a 2-manifold in order to attain givenglobal specifications. The key idea was the utilization of offset sur-faces, whose parameters are determined by continuous constrainednon-linear optimization, such that the enclosed rigid body realizesa given objective. We ensured the computational feasibility of ourmethod by reducing the order of the problem by solving it in a suit-able lower-dimensional subspace, given by the manifold harmonicbasis. Apart from increased numerical robustness due to an inherentregularization, we achieved a reduction of the computation times ofat least of 2-3 orders of magnitude using common off-the-shelf nu-merical solvers in our implementation. We documented the versa-tility of our approach by optimizing a range of physical propertiesof rigid objects, and we provided a comparison with previous meth-ods for shape optimization. In the future, we intend to integrate ourtechnique in popular modeling software tools to assist users in thecreation of fabrication-ready customized models.

    AcknowledgmentsWe would like to acknowledge Christian Hafner for help with therenderer, Paul Guerrero for help with MATLAB, Moritz Bächer forsharing the models and providing the permission to use them, Se-bastien Loriot for sharing his code for the computation of the skele-tons, and Andrea Tagliasacchi for pointing us there.

    This research was funded by the Austrian Science Fund (grants:FWF P24600-N23, FWF P27972-N31, FWF P23700-N23), the Eu-ropean Research Council (ERC Advanced Grant "ACROSS", grant

  • agreement 340884), and the German Research Foundation (DFG,Gottfried-Wilhelm-Leibniz Programm).

    References

    BÄCHER, M., BICKEL, B., JAMES, D. L., AND PFISTER, H.2012. Fabricating articulated characters from skinned meshes.ACM Transactions on Graphics 31, 4 (July), 1–9.

    BÄCHER, M., WHITING, E., BICKEL, B., AND SORKINE-HORNUNG, O. 2014. Spin-It: Optimizing Moment of Inertiafor Spinnable Objects. ACM Transactions on Graphics 33, 4(July), 1–10.

    BICKEL, B., BÄCHER, M., OTADUY, M. A., LEE, H. R., PFIS-TER, H., GROSS, M., AND MATUSIK, W. 2010. Design andfabrication of materials with desired deformation behavior. ACMTransactions on Graphics 29, 4 (July), 1.

    BICKEL, B., GROSS, M., KAUFMANN, P., SKOURAS, M.,THOMASZEWSKI, B., BRADLEY, D., BEELER, T., JACKSON,P., MARSCHNER, S., AND MATUSIK, W. 2012. Physical facecloning. ACM Transactions on Graphics 31, 4 (July), 1–10.

    BOTSCH, M., AND KOBBELT, L. 2004. An intuitive frameworkfor real-time freeform modeling. ACM Transactions on Graphics23, 3 (Aug.), 630.

    CHRISTIANSEN, A. N., SCHMIDT, R., AND BÆ RENTZEN, J. A.2015. Automatic balancing of 3D models. Computer-Aided De-sign 58 (Jan.), 236–241.

    COROS, S., THOMASZEWSKI, B., NORIS, G., SUEDA, S., FOR-BERG, M., SUMNER, R. W., MATUSIK, W., AND BICKEL, B.2013. Computational design of mechanical characters. ACMTransactions on Graphics 32, 4 (July), 1.

    GOLDSTEIN, H., POOLE, C. P., AND SAFKO, J. L. 2002. Classi-cal Mechanics. Addison Wesley.

    HAFTKA, R. T., AND GÜRDAL, Z. 1992. Elements of StructuralOptimization, 3rd rev. a ed. Springer.

    JACOBSON, A., BARAN, I., POPOVIĆ, J., AND SORKINE, O.2011. Bounded biharmonic weights for real-time deformation.ACM Transactions on Graphics 30, 4 (July), 1.

    JACOBSON, A., PANOZZO, D., AND OTHERS, 2014. {libigl}: Asimple {C++} geometry processing library.

    KIM, T., AND JAMES, D. L. 2009. Skipping steps in deformablesimulation with online model reduction. ACM Transactions onGraphics 28, 5 (Dec.), 1.

    KOBBELT, L., CAMPAGNA, S., VORSATZ, J., AND SEIDEL, H.-P.1998. Interactive multi-resolution modeling on arbitrary meshes.Proceedings ACM SIGGRAPH ’98 (July), 105–114.

    LEHOUCQ, R. B., SORENSEN, D. C., AND YANG, C. 1998.ARPACK Users’ Guide, band 6 of ed. Society for Industrial andApplied Mathematics (SIAM), Jan.

    LEVY, B. 2006. Laplace-Beltrami Eigenfunctions: Towards anAlgorithm That "Understands" Geometry. In IEEE InternationalConference on Shape Modeling and Applications 2006 (SMI’06),IEEE, 13–13.

    LU, L., CHEN, B., SHARF, A., ZHAO, H., WEI, Y., FAN, Q.,CHEN, X., SAVOYE, Y., TU, C., AND COHEN-OR, D. 2014.Build-to-Last: Strength to Weight 3D Printed Objects. ACMTransactions on Graphics 33, 4 (July), 1–10.

    LUO, L., BARAN, I., RUSINKIEWICZ, S., AND MATUSIK, W.2012. Chopper: partitioning models into 3D-printable parts.ACM Transactions on Graphics 31, 6 (Nov.), 1.

    MESSNER, A. M., AND TAYLOR, G. Q. 1980. Algorithm 550:Solid Polyhedron Measures [Z]. ACM Transactions on Mathe-matical Software 6, 1 (Mar.), 121–130.

    PENTLAND, A., AND WILLIAMS, J. 1989. Good vibrations:model dynamics for graphics and animation. ACM SIGGRAPHComputer Graphics 23, 3 (July), 207–214.

    PINKALL, U., AND POLTHIER, K. 1993. Computing discrete min-imal surfaces and their conjugates. Experimental Mathematics 2,1, 15–36.

    PRÉVOST, R., WHITING, E., LEFEBVRE, S., AND SORKINE-HORNUNG, O. 2013. Make It Stand: Balancing Shapes for3D Fabrication. ACM Transactions on Graphics 32, 4 (July), 1.

    SKOURAS, M., THOMASZEWSKI, B., BICKEL, B., AND GROSS,M. 2012. Computational Design of Rubber Balloons. ComputerGraphics Forum 31, 2pt4 (May), 835–844.

    STAVA, O., VANEK, J., BENES, B., CARR, N., AND MĚCH, R.2012. Stress relief: improving structural strength of 3D printableobjects. ACM Transactions on Graphics 31, 4 (July), 1–11.

    SUMNER, R. W., SCHMID, J., AND PAULY, M. 2007. Embed-ded deformation for shape manipulation. ACM Transactions onGraphics 26, 3 (July), 80.

    TAGLIASACCHI, A., ALHASHIM, I., OLSON, M., AND ZHANG,H. 2012. Mean Curvature Skeletons. Computer Graphics Forum31, 5 (Aug.), 1735–1744.

    TAUBIN, G. 1995. A signal processing approach to fair sur-face design. In Proceedings of the 22nd annual conference onComputer graphics and interactive techniques - SIGGRAPH ’95,ACM Press, New York, New York, USA, 351–358.

    THOMASZEWSKI, B., COROS, S., GAUGE, D., MEGARO, V.,GRINSPUN, E., AND GROSS, M. 2014. Computational designof linkage-based characters. ACM Transactions on Graphics 33,4 (July), 1–9.

    TIMMER, H., AND STERN, J. 1980. Computation of global geo-metric properties of solid objects. Computer-Aided Design 12, 6(Nov.), 301–304.

    UMETANI, N., KAUFMAN, D. M., IGARASHI, T., AND GRIN-SPUN, E. 2011. Sensitive couture for interactive garment mod-eling and editing. ACM Transactions on Graphics 30, 4 (July),1.

    UMETANI, N., IGARASHI, T., AND MITRA, N. J. 2012. Guidedexploration of physically valid shapes for furniture design. ACMTransactions on Graphics 31, 4 (July), 1–11.

    VALLET, B., AND LÉVY, B. 2008. Spectral Geometry Process-ing with Manifold Harmonics. Computer Graphics Forum 27, 2(Apr.), 251–260.

    VON TYCOWICZ, C., SCHULZ, C., SEIDEL, H.-P., AND HILDE-BRANDT, K. 2013. An efficient construction of reduced de-formable objects. ACM Transactions on Graphics 32, 6 (Nov.),1–10.

    WANG, W., WANG, T. Y., YANG, Z., LIU, L., TONG, X., TONG,W., DENG, J., CHEN, F., AND LIU, X. 2013. Cost-effectiveprinting of 3D objects with skin-frame structures. ACM Trans-actions on Graphics 32, 6 (Nov.), 1–10.

    ZHANG, H., VAN KAICK, O., AND DYER, R. 2010. Spec-tral Mesh Processing. Computer Graphics Forum 29, 6 (Sept.),1865–1894.

    ZHOU, Q., PANETTA, J., AND ZORIN, D. 2013. Worst-case struc-tural analysis. ACM Transactions on Graphics 32, 4 (July), 1.

    ZHU, L., XU, W., SNYDER, J., LIU, Y., WANG, G., AND GUO,B. 2012. Motion-guided mechanical toy modeling. ACM Trans-actions on Graphics 31, 6 (Nov.), 1.