<figure><img src="image_1.png" /></figure>

HAL
open science

Computational Design of Fabric Formwork

Xiaoting Zhang, Guoxin Fang, Mélina Skouras, Gwenda Gieseler, Charlie C.L.

Wang, Emily Whiting

► To cite this version:

Xiaoting Zhang, Guoxin Fang, Mélina Skouras, Gwenda Gieseler, Charlie C.L. Wang, et al.. Com-
putational Design of Fabric Formwork. ACM Transactions on Graphics, 2019, 38 (4), pp.1-13.
10.1145/3306346.3322988 . hal-02397265

HAL Id: hal-02397265

https://inria.hal.science/hal-02397265

Submitted on 6 Dec 2019

**HAL** is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
Computational Design of Fabric Formwork

XIAOTING ZHANG, Boston University, USA

GUOXIN FANG, Delft University of Technology, The Netherlands

MELINA SKOURAS, Univ. Grenoble Alpes, Inria, CNRS, Grenoble INP, LJK, France

GWENDA GIESELER, Delft University of Technology, The Netherlands

CHARLIE C.L. WANG, The Chinese University of Hong Kong, China

EMILY WHITING, Boston University, USA

<figure><img src="image_2.png" /><figcaption>Fig. 1. A fertility model designed and fabricated using our computational approach. For a target 3D model (a), our system can automatically compute a set of flat panels (b) that can be sewn together to serve as fabric containers to form a target shape by pressure of liquid plaster poured in – see (c) for the simulation under force equilibrium of membrane tension, liquid pressure and external supports. The generated flat panels are used to conduct the physical fabrication of fabric formwork (d). After drying and unwrapping the fabric container, a sculpture with the designed target shape has been fabricated (e).</figcaption></figure>

We present an inverse design tool for fabric formwork – a process where flat panels are sewn together to form a fabric container for casting a plaster sculpture. Compared to 3D printing techniques, the benefit of fabric formwork is its properties of low-cost and easy transport. The process of fabric formwork is akin to molding and casting but having a soft boundary. Deformation of the fabric container is governed by force equilibrium between the pressure forces from liquid fill and tension in the stretched fabric. The final result of fabrication depends on the shapes of the flat panels, the fabrication orientation and the placement of external supports. Our computational framework generates optimized flat panels and fabrication orientation with reference to a target shape, and determines effective locations for external supports. We demonstrate the function of this design tool on a variety of models with different shapes and topology. Physical fabrication is also demonstrated to validate our approach.

CCS Concepts: • **Computing methodologies** → **Shape modeling**; **Modelling and simulation**; • **Applied computing** → **Computer-aided design**.

Additional Key Words and Phrases: computational design, fabric formwork, shape optimization, fabrication, casting

**ACM Reference Format:**

Xiaoting Zhang, Guoxin Fang, Melina Skouras, Gwenda Gieseler, Charlie C.L. Wang, and Emily Whiting. 2019. Computational Design of Fabric Formwork. *ACM Trans. Graph.* 38, 4, Article 109 (July 2019), 13 pages. https://doi.org/10.1145/3306346.3322988

Authors' addresses: Xiaoting Zhang; Emily Whiting, Department of Computer Science, Boston University, USA; Guoxin Fang; Gwenda Gieseler, Department of Design Engineering, Delft University of Technology, the Netherlands; Melina Skouras, Univ. Grenoble Alpes, Inria, CNRS, Grenoble INP, LJK, France; Charlie C.L. Wang, Department of Mechanical and Automation Engineering, The Chinese University of Hong Kong, China.

© 2019 Association for Computing Machinery.
This is the author's version of the work. It is posted here for your personal use. Not for
redistribution. The definitive Version of Record was published in ACM Transactions on
Graphics, https://doi.org/10.1145/3306346.3322988.

# 1 INTRODUCTION

Despite rapid advances in 3D printing, fabricating large, durable and high quality objects is still impractical for all but highly trained experts. Although 3D printing has been demonstrated experimentally to produce house-sized structures with concrete [Khoshnevis 2004] and standard thermoplastics [Bogue 2013], these fabrication methods require enormous time, financial investment, and non-standard equipment such as oversized gantries. Traditional casting processes with rigid molds can capture detailed geometry, but present restrictive constraints to allow mold removal, and molds are similarly expensive to create for large models [Groover 2011].

The goal of this paper is to lay the algorithmic foundation for large scale fabrication with conventional, low cost materials. We propose a fundamentally different approach to large scale construction through computational design of fabric formwork. The fabric formwork process is akin to molding and casting. Using the flexibility of a textile membrane as a container (typically nylon, polyester, or polypropylene), fabric formwork provides a method to form natural tension geometries [West 2016]. Containers are fabric panels attached at seams by sewing. Wet concrete is poured into the fabric container, the fluid pressure and membrane boundary then work together to produce the structural shape after solidification. The deformation of every point on the panel is governed by force equilibrium: the pressure force from the liquid concrete balanced by tension in the stretched textile. The benefit is a low-cost and easily transportable fabrication process. The fabric panels can be created cheaply and quickly and are inherently capable of large-scale construction.

Fabric formwork has been studied in architecture and engineering research, however, existing methods in translating digital models to fabric panel geometries are restricted to simple geometric shapes
with limited degrees of freedom [Hawkins et al. 2016]. Complex structures are typically achieved by experimental trial-and-error. This work aims at changing the empirical practice into a systematic procedure with the help of the computational design method developed in this paper. We make the following contributions:

* We introduce a computational model for molding and casting with flexible fabric formwork. Our inverse-design algorithm generates a 3D target shape from 2D fabric panels, based on equilibrium of hydrostatic and membrane forces.

* We propose an optimization scheme to determine the suspension orientation for hanging the formwork. We use a sampling-based method and introduce a novel stability map as a prior for estimating the globally optimal orientation.

* We provide a formulation for string, cable, and plane external supports which expand the space of feasible shapes. We propose strategies for automatic support placement by analysing shape deviation metrics.

* We validate our technique on physically fabricated prototypes using cloth panels and plaster fill.

## 1.1 Related Work

1.1.1 Fabric Formwork. The origins of fabric formwork (or flexible formwork) can be traced back to Roman architecture, and throughout the past century different materials have been experimented with such as reeds, cotton, and paper [Veenendaal et al. 2011]. With today's availability of high strength and low cost fabrics, fabric formwork has become a well studied area in architecture and structural engineering communities. For comprehensive surveys see [Hawkins et al. 2016; Hurd 1995; Veenendaal and Block 2012; West 2016]. The focus within engineering and design has been on manufacturing methods for canonical structural elements such as slabs, beams, trusses, and columns. In these cases the need for detailed shape prediction has been circumvented by complex formwork configurations involving pre-stressed fabric [West and Araya 2009], adjustable molds [Grunewald et al. 2012], or extensive use of rigid surfaces to limit the fabric's deflection [Hawkins et al. 2016; West 2006]. Some design procedures have been developed to predict the deformed shape. Schmitz [2006] introduced a procedure to analytically design an optimized fabric-formed wall panel, but the approach was limited to 2D cross sections. More recent work has used numerical methods to design, optimize, and predict the profile of fabric-formed concrete beams [Foster and Ibell 2016; Orr et al. 2011].

In contrast to the *filled* fabric molds we study, an alternative construction method is *surface* molds for creating shell structures where concrete is coated or sprayed on a tensioned membrane. A form-finding strategy based on the force density method was developed to approximate saddle-shaped shells [Van Mele and Block 2011]. Veenendaal and Block [2015] designed thin-shell structures with reduced construction tolerances by computing membrane stress and cutting patterns. A novel knitted formwork system was developed by Popescu et al. [2018; 2017] where the design procedure used a parametric study and finite element analysis. In contrast to existing methods focused on structural systems, we propose an algorithm for creating *sculptural* objects with fully free-form 3D geometry, enabled by a physics-based optimization procedure.

Fabric formwork is a variant of molding and casting procedures, one of the oldest yet still active manufacturing processes for rapid prototyping due to its cost efficiency for mass production [Yan and Gu 1996]. Primarily research has focused on rigid molds with restrictive geometric constraints on mold removal, leading to many techniques on shape decomposition into feasible components [Ahn et al. 2002; Ganter and Skoglund 1993; Hu et al. 2014; Lin and Quang 2014; Weinstein and Manoochehri 1996; Ye et al. 2004, 2001]. In recent work [Alderighi et al. 2018; Nakashima et al. 2018], segmentation is formulated as an energy minimization problem and produces complex shapes with only a few molds. However, the mold sizes are limited since they are 3D printed. In contrast, flexible molds provide greater freedom during the removal process, allowing complex detailed shapes [Malomo et al. 2016]. But controlling shape deformation caused by flexibility of the molds is largely unexplored.

1.1.2 *Geometric Modeling Approaches.* Geometric modeling techniques have been widely developed for computing flat panels that can be assembled into a given 3D shape – e.g., segmentation-based methods [Julius et al. 2005; Shatz et al. 2006; Wang 2008], strip-based methods [Mitani and Suzuki 2004; Schüller et al. 2018]), methods based on developable surfaces [Kilian et al. 2008; Liu et al. 2006; Rabinovich et al. 2018; Rose et al. 2007] and structures for self-deformation [Guseinov et al. 2017]. However, they cannot be directly used in the computation of fabric formwork as the shape of a fabric container will be deformed significantly after pouring in the liquid plaster. We need to develop a method that can effectively capture such deformation and inversely change the flat panels to let the shape of a deformed fabric container match the target shape.

1.1.3 *Designing Physical Surfaces.* Our work is inspired by Skouras et al. [2014], where an interactive system aids design of inflatable structures to match a target input shape. Fundamental differences exist in that the fluid fill pressure changes along with the global shape. Also, instead of internal connections (which would restrict flow of the fluid fill) we introduce a suite of external supports that expand the space of possible designs. Generally, our work falls in the category of research trying to obtain optimized structures that assume designed shapes under force equilibrium. Several works in computer graphics have considered this class of problem, including Kirchhoff-Plateau surfaces [Pérez et al. 2017], thermal-formed models [Schüller et al. 2016], clothing [Bartle et al. 2016; Umetani et al. 2011], and plush toys [Bern et al. 2017; Mori and Igarashi 2007] – all aim at forming given 3D surfaces by assembled flat panels. In particular, Pérez et al. [2017] developed an approach to compute an optimized rod network on pre-stretched fabric, which is a similar 2D layout computation problem. However, the inverse design problem of fabric formwork is governed by a different physical model which is challenging because of the variation of fluid pressure with reference to the height and its dependency on fabrication orientation.

1.1.4 *Cloth, Paper and Shell Simulation.* The community of computer graphics has a long history developing methods for simulating cloth and other deformable objects (e.g., the spring-mass system [Volino et al. 1995]). A common understanding that has been achieved is that the fabrics are more easy to fold rather than stretch.
Many approaches attempt to model such nearly 'inextensible' behavior by using either a buckling model [Choi and Ko 2002] or a special projection [Goldenthal et al. 2007] during the cloth simulation. For modeling such inextensible phenomena on paper, a special energy based triangulation method has been developed in Schreck et al. [2015]. Recently, a general framework based on projective dynamics was introduced in Bouaziz et al. [2014] to efficiently simulate dynamics with hard constraints. Nonlinear tensile stiffness can also be well captured and simulated [Volino et al. 2009], and a unified computational model can be used to simulate a large range of elastoplastic behaviors [Martin et al. 2010].

### 1.1.5 Inverse Design for Fabrication.
In a wider scope of applications, constraints on structural strength, deformation behavior and other aspects of functionality have been considered in inverse shape design. Bickel et al. [2010] computed an optimized combination of materials / micro-structures to achieve a desired deformation behavior. Wang and Tang [2010] targeted on designing clothes to provide a certain level of required compression. An optimized distribution of materials was computed in [Skouras et al. 2013] to approximate a design deformation under actuation. The influence of gravity on 3D printed models was studied and compensated by inverse deformation in [Chen et al. 2014]. A similar deformation behavior was designed on flexible rod meshes in [Pérez et al. 2015]. The inverse design of cellular micro-structures was conducted in [Panetta et al. 2015; Schumacher et al. 2015] to achieve a designed deformation behavior. A similar purpose for designing deformation behavior was recently realized by composite silicone [Zehnder et al. 2017]. Because of complex physical phenomena that is difficult to simulate accurately, many of these approaches capture the properties of physical models by a data-driven approach (e.g., [Bickel et al. 2010; Panetta et al. 2015; Schumacher et al. 2015; Zehnder et al. 2017; Zhang et al. 2016]). An approach mainly based on geometry is developed in [Guseinov et al. 2017] to form a target shape by 3D printing small structures on stretched fabric.

### 1.1.6 Large-Scale Fabrication.
A central issue with 3D printing is the restricted build volume. Larger scale objects can be decomposed into parts that conform to the printer volume [Chen et al. 2015; Hu et al. 2014; Vanek et al. 2014; Yao et al. 2015], for example, Chopper partitions 3D printed models followed by an assembly post-process [Luo et al. 2012], and CofiFab first fabricates a coarse internal structure using laser cut pieces [Song et al. 2016]. However these methods are limited by slow printing speed and can suffer from aesthetic artifacts and structural weakness at partition boundaries. Large scale additive manufacturing has been explored for architectural construction by 3D printing with concrete [Buswell et al. 2007; Gosselin et al. 2016; Le et al. 2012] but is often impractical as it requires oversized gantries.

## 2 FABRIC FORMWORK

In this section we review the physical fabrication procedure for fabric formwork and describe the parameterization for our computational model.

<figure><img src="image_3.png" /><figcaption>Fig. 2. Procedure for constructing fabric formwork models. (1) 2D panels, (2) sewn panels, and (3) the support frame. (4) Fabric is suspended and plaster fill is poured in, (5) the process of solidification, and (6) unwrapping.</figcaption></figure>

### 2.1 Fabrication Process

Given a set of 2D panels, seam locations, suspension contact points, and external supports, we proceed to create a physical prototype that approximates the target shape. The steps of the fabrication procedure are as pictured in Fig. 2:

(1) Cut flat panels from fabric according to our generated pattern, the x- and y-axes indicate warp and weft directions of fabric.

(2) Sew adjacent panels at shared boundaries along seam lines.

(3) Affix formwork to rigid frame at specified suspension points.

(4) Pour liquid casting material into openings in formwork. Care must be taken for fluid to reach all sections of the formwork.

(5) Allow fill material to cure and solidify.

(6) Remove cloth panels to reveal solid, cast plaster prototype.

External supports can be employed to provide better shape control for fabrication. Details are presented in section 4.

### 2.2 Parameterization

The input to our system is a 3D target shape, $\hat{X} \in \mathbb{R}^{3N}$, with vertices $\hat{x}_j \in \hat{X}$ ($j = 1, \dots, N$). The goal of our system is to compute a rest shape, such that when it deforms under fluid pressure and other external forces, the deformed shape will closely match the target.

We represent the rest shape directly as the set of flat fabric panels that will be cut from fabric sheets and sewn together. The fabric panels are parameterized in 2D material coordinates, denoted by $X \in \mathbb{R}^{2n}$, where there are $n$ panel vertices $x_j \in X$ ($j = 1, \dots, n$). See Fig. 1 (b) for an example. To construct the 3D shape, the flat panels are sewn together, where the connection between adjacent panels is a seam. $\Gamma$. Here we have $N < n$ because a vertex on the seam of a target model can have multiple corresponding vertices on the seams of different flat panels.

The deformed shape, $\bar{X} \in \mathbb{R}^{3N}$, is the 3D shape at force equilibrium after the fluid casting material has been poured in. We denote the 3D vertex coordinates as $\bar{x}_i \in \bar{X}$. In our framework the flat panels and the deformed shape are optimized together to achieve the desired target shape. See Fig. 3 for an example.

Gravity plays a central role in the shape achieved by a fabric formwork model, and will depend on the orientation chosen for fabrication. Fabric has the property of resisting high loads in tension
<figure><img src="image_4.png" /><figcaption>Fig. 3. Elephant model. (Green) Target shape $\hat{X}$. (Blue) Deformed shape $\bar{X}$ before optimization has been performed, based on target geometry and panel initialization. (Yellow) Deformed shape $\bar{X}$ resulting from optimization of rest shape X and orientation d. The shape is a close match to the target. (Far-Right) Final fabrication orientation d, suspension contact points denoted with thick black line. Panel segmentation corresponds to colors.</figcaption></figure>

but buckles under compression. As such, a given 3D shape may be attainable when hung in one direction, but infeasible in another. For example, an arch may hang naturally under self weight of the plaster and fabric in a "U" orientation, but is infeasible to create with liquid plaster if inverted into a "∩" shape. We optimize the formwork suspension orientation, d (as a unit vector), to improve the match to the target shape. We first identify feasible orientations using a stable suspension constraint, then prioritize that domain for orientations that minimize distance from the target geometry. Details are given in sections 5.2 and 6.2.

# 3 MECHANICS PROPERTIES

## 3.1 Fabric Mechanics

Fabric often has nonlinear behavior due to its woven pattern and properties of the fibers [Wang et al. 2011]. Since the formwork is made from flat fabric panels, the panels can be parameterized in 2D material coordinates which allows us to calculate the strain tensors of the orthotropic fabric. Recall that $X = \{x_i\}$ is the undeformed (rest) shape in material coordinates (i.e., the parameterized shape in 2D) and $\bar{X} = \{\bar{x}_i\}$ is the deformed shape in 3D. E is the Green strain tensor calculated as $E = \frac{1}{2}(G - I)$, with $G = F^T F$ denoting the right Cauchy-Green deformation tensor and $F = \partial\bar{X}/\partial X$ is the deformation gradient tensor [Bonet and Wood 1997]. We adopt the St. Venant-Kirchhoff (StVK) model [Ogden 1997] with nonlinear continuum mechanics to model fabric elasticity. StVK is a hypere-lastic material model for simulating anisotropic and nonlinear cloth materials under large deformations [Volino et al. 2009], which is defined by a total elastic energy $W(E)$. The internal membrane force function at point $\bar{x}_i$ on the 3D shape can be defined as

$$f_m(x_i, \bar{x}_i) = \frac{\partial W}{\partial E} \qquad (1)$$

## 3.2 Fluid Pressure

As a second component of fabric mechanics, we require an estimation of the pressure forces that will be exerted on the flexible panels. One way of handling the interaction between the fluid and the membrane boundary is to explicitly model the dynamics, e.g. using the Navier-Stokes equations for pressure and fluid velocity fields. However, since we are only interested in the result at equilibrium, we can directly use the property of hydrostatic pressure from classical mechanics. Fluid pressure is the same at all points on

a horizontal plane regardless of geometry, provided that the fluid is interconnected. The pressure exerted at a point on the fabric can be expressed as $p = \rho g \Delta h$, where $\Delta h$ is the height difference to a zero pressure reference point, $\rho$ is fluid density, and $g$ denotes the gravitational acceleration [Çengel and Cimbala 2017; Fay 1994].

A key property is that the pressure the fluid exerts on the fabric membrane at a point $\bar{x}_i \in \bar{X}$ depends on its vertical position – and therefore is orientation dependent. The ‘highest’ points exert zero pressure, and the fluid pressure increases linearly along the vertical direction d. After setting a zero pressure reference point on the 3D model (denoted by $\bar{x}_d$), the magnitude of pressure at a point $\bar{x}_i$ is then

$$p(\bar{x}_i, d) = \rho g (\bar{x}_d - \bar{x}_i) \cdot d$$

and the orientation-dependent pressure force is given by:

$$f_p(\bar{x}_i, d) = \Delta A_i p(\bar{x}_i, d) n_i \qquad (2)$$

where $n_i$ is the deformed surface normal at point $\bar{x}_i$ and $\Delta A_i$ is the area of the surface element attributed to $\bar{x}_i$. In our implementation, $\frac{1}{3}$ of the total area of triangles around $\bar{x}_i$ is used for $\Delta A_i$.

## 3.3 Force Equilibrium

The shape of a deformed fabric formwork model must satisfy force equilibrium. That is, the fabric tension forces, $f_m$, must negate the incident fluid pressure forces, $f_p$, at all points on the surface of the model, and any external forces, $f_e$. The total force at each point $\bar{x}_i$ on the deformed model must satisfy:

$$f_m(x_i, \bar{x}_i) + f_p(\bar{x}_i, d) + f_e(\bar{x}_i) = 0 \quad (\forall x_i, \bar{x}_i). \qquad (3)$$

Note that equilibrium is explicitly enforced only on the surface of the model. Here we neglect the weight of the fabric as it is negligible compared to the pressure forces. Force equilibrium is employed in our computational framework as a hard constraint. In the following section we describe our formulation for external supports, which are added into the system as external forces, $f_e$.

# 4 EXTERNAL SUPPORTS

In addition to the fabric panels, external supports are needed to broaden the range of shapes and achieve surface geometry that is infeasible with panels alone, such as planar regions and sharp edges. We demonstrate three types of supports – strings, cables and planes – that each apply a different constraint on the resultant shape:

(1) **Strings** {$s_j, p_j$} fix the height of a point on the fabric surface by adding a suspended contact point. The attachment point $p_j$ is embedded in the membrane (i.e., sewn to the panel). The vertical position of $p_j$ is constrained by a nearly inextensible string with length $l_j$ hung from the rigid frame at $s_j$. We formulate the string tension force at $p_j$ as

$$f_{est}(p_j) = \kappa_1 (\|p_j - s_j\| - l_j) \frac{s_j - p_j}{\|s_j - p_j\|}$$

Here $l_j$ represents the distance between $p_j$ and $s_j$ on the target shape, and $\kappa_1$ is a stiffness constant for the string when in tension ($\kappa_1 = 0$ when in compression).
<figure><img src="image_5.png" /><figcaption>Fig. 4. External supports. (Left-to-Right) Strings, cables, and planes.</figcaption></figure>

(2) **Cables** {$C_k$} are curves that can perform 1D regularization for deformation and locally bound the membrane deformation – e.g., to create concave creases. We sew the cables in the membrane which prevents "sliding" along the fabric formwork surface during deformation. For a point $\bar{x}$ located on cables, the external force is formulated as

$$f_{e_c}(\bar{x}) = \frac{1}{2} \kappa_2 \sum_{k=1}^{n_c} \frac{\partial \left( \int_{\bar{x} \in C_k} d\bar{x} - \int_{x \in C_k} dx \right)^2}{\partial \bar{x}},$$

where $n_c$ is the number of cables passing through $\bar{x}$. Here $\bar{x}$ can be any point on the surface (i.e., not necessarily a vertex). Similarly, $\kappa_2$ is the stiffness of the cable when in tension.

(3) **Planes** {$P_k$} restrict the membrane to a flat surface. The membrane is allowed to move along the surface but not penetrate the surface. We model the plane constraint by exerting a penalty force on any point $\bar{x}_i$ on the deformed shape that intersects the plane $P_k$ as

$$f_{e_{pl}}(\bar{x}_i) = \sum_{k=1}^{n_{pl}} \kappa_3 \|\bar{x}_i - x_{P_k}(\bar{x}_i)\| \hat{o}_k,$$

where $n_{pl}$ denotes the number of plane supports, $x_{P_k}(\bar{x}_i)$ is the projection of $\bar{x}_i$ on $P_k$ and $\hat{o}_k$ is the plane normal. Coefficient $\kappa_3$ is positive when collision is detected and zero otherwise.

The total force applied by external supports is denoted by $f_e$, and is given by the sum over all support types as

$$f_e = f_{e_{st}} + f_{e_c} + f_{e_{pl}}.$$

The equilibrium conditions for the deformed formwork model (Eq. (3)) incorporate external supports as a set of external forces. Force equilibrium is a condition for feasibility and is enforced as a hard constraint in our optimization framework (see Section 6). In the above formulas, $\kappa_1$, $\kappa_2$ and $\kappa_3$ are user specified coefficients for controlling the stiffness. In our implementation $\kappa_1 = \kappa_2 = 1e3$ and $\kappa_3 = 1e5$.

Fig. 5 illustrates the effectiveness of the supports on two example shapes. Comparison of the optimized shape with and without external supports shows that large deformations can be counteracted. We describe an approach for automatic support placement is Section 7.

# 5 METRICS FOR DESIGN

The quality of a design generated by our system is measured by four metrics according to the shape deviation, stable suspension, complexity of fabrication, and regularity of local-span.

<figure><img src="image_6.png" /><figcaption>Fig. 5. Adding external supports can significantly improve the result of optimization. (Green) Optimized results without external supports, which are far different from the input models. (Yellow) Optimized results with support configuration as shown in Fig. 17.</figcaption></figure>

## 5.1 Shape Deviation

Our main design goal is to match the fabric formwork model to the target shape. We measure the deviation between a deformed shape and the target on the discretized fabric membrane based on a point-to-point distance metric:

$$M_d(\bar{X}) = \sum_{i=1}^{N} \|\hat{x}_i - \hat{x}_c(\bar{x}_i)\|^2 \quad (4)$$

where $\hat{x}_c(\cdot)$ is the corresponding point on the target shape for $\bar{x}_i$. Ideally, the closest point of $\bar{x}_i$ on the target surface will be used for $\hat{x}_c(\cdot)$ – i.e., measuring the point-to-surface distance. However, a problem occurs when two shapes are far away from each other where the closest point may trace to the wrong region of a model. Therefore, when the distance between $\bar{x}_i$ and its closest point is larger than the average edge length of the input mesh, the corresponding point $\hat{x}_i \in \hat{X}$ of $\bar{x}_i$ is used for $\hat{x}_c(\cdot)$.

## 5.2 Stable Suspension

Stable suspension of a model requires that static equilibrium be satisfied. The orientation, $d$, of the model defines the direction in which the sewn panels are hung during the casting phase of the fabrication process. Orientation also dictates the choice of suspension contact points that are fixed to the rigid frame. The suspension points of a model are denoted as $\Psi = \{s_i\}$, including all vertices that are within $\epsilon$ of the topmost extrema: $\{s_i\} = \{\bar{x}_i | \bar{x}_i \cdot d > h_{max} - \epsilon\}$, where $h_{max} = \max\{\bar{x}_i \cdot d\}$ and $\epsilon$ is a threshold given by the user.

Using the average position of all suspension points, we can define a plane with $d$ as its normal, named the suspension plane, $P_{sus}$. We define the suspension polygon as the convex-hull of all suspension points projected on $P_{sus}$. To maximize stability, we seek configurations where the center of mass of the model, $c_m$, is aligned vertically with the center of the suspension polygon, $c_s$, such that:

$$M_p(\bar{X}, d) = \left\| \frac{(c_m - c_s)}{\|c_m - c_s\|} \times d \right\|^2 \quad (5)$$

## 5.3 Fabrication Complexity

Adjacent panels must have the same seam length along their shared boundary. Similar to Skouras et al. [2014], a penalty term is adopted for differing lengths of corresponding seams:

$$M_I(\mathbf{X}) = \sum_{i=1}^{n_I} \left( \int_{x \in \Gamma_{i1}} dx - \int_{x \in \Gamma_{i2}} dx \right)^2 \quad (6)$$
where $n_T$ is the total number of seams, and $\Gamma_{i1}$ and $\Gamma_{i2}$ are two corresponding boundary curves on flat panels for the i-th seam.

To reduce fabrication complexity in sewing the panels, we also introduce a term promoting smoothness on seams to eliminate sharp corners:

$$M_s(\mathbf{X}) = \sum_{i=1}^{n_T} \sum_{\mathbf{x} \in \Gamma_i} \|\mathbf{x} - \frac{1}{2}(\mathbf{x}^{-} + \mathbf{x}^{+})\|^2 \quad (7)$$

where $\mathbf{x}^{-}$ and $\mathbf{x}^{+}$ are the vertices before and after $\mathbf{x}$ on seam $\Gamma_i$.

## 5.4 Local-Span Similarity

The purpose of this metric is to locally compare the deformed fabric formwork model to the target shape. It provides a regularization in the optimization when there is large deformation, e.g., due to insufficient supports or an inappropriate orientation is chosen for fabrication (e.g. the 'S' shape in Fig. 6(b)). The regularization is based on the local-span similarity (difference in edge-length) between the deformed shape and the target shape:

$$M_e(\bar{\mathbf{X}}) = \sum_{i=1}^{N} \sum_{j \in \mathcal{N}_i} (\|\bar{\mathbf{x}}_i - \bar{\mathbf{x}}_j\| - \|\hat{\mathbf{x}}_i - \hat{\mathbf{x}}_j\|)^2 \quad (8)$$

where $\mathcal{N}_i$ denotes the index set of vertices neighboring $\bar{\mathbf{x}}_i$ and $\hat{\mathbf{x}}_i$.

# 6 SHAPE OPTIMIZATION

We tackle an inverse shape design problem for fabric formwork. Given a 3D target shape, our system generates a set of flat panels and suspension orientation, such that the corresponding deformed shape closely matches the target under equilibrium of membrane forces, fluid pressure, and forces from external supports.

## 6.1 Formulation

The approach for solving the inverse design problem of fabric formwork is formulated in a constrained optimization framework. The variables to be optimized include the flat panels X, the deformed shape $\bar{X}$ and the fabrication orientation d. The objective function to be optimized is a combination of the metrics defined in section 5:

$$\begin{array}{ll} \min_{\mathbf{X}, \bar{\mathbf{X}}, \mathbf{d}} & w_d M_d + w_p M_p + w_l M_l + w_s M_s + w_e M_e \\ \text{s.t.} & \mathbf{f}_m(\mathbf{X}, \bar{\mathbf{X}}) + \mathbf{f}_\rho(\bar{\mathbf{X}}, \mathbf{d}) + \mathbf{f}_e(\bar{\mathbf{X}}) = 0 \\ & \bar{\mathbf{x}}_i = \mathbf{s}_i \quad (\forall \mathbf{s}_i \in \mathcal{P}) \end{array} \quad (9)$$

where {$M_d, M_p, M_l, M_s, M_e$} are defined in Eqs.(4)-(8) and $\Psi = \{\mathbf{s}_i\}$ is the set of suspension points. $\bar{\mathbf{x}}_i = \mathbf{s}_i$ requires suspension points to be fixed at the given position. The weights are assigned to balance the importance between different metrics. In all of our examples, $(w_d, w_p, w_l, w_s, w_e) = (0.005, 0.05, 1, 0.03, 0.005)$ are used.

A key challenge in our optimization framework is the complex relationship between the object shape, fabrication orientation, and force model. The formulation in Eq. (9) is highly nonlinear and non-convex, and the computation can easily become stuck at a local optimum. To overcome these issues we use a strategy that alternates between gradient-based optimization and a Bayesian sampling-based approach. The sampling step uses stability information to guide the search of the design space and avoid sub-optimal

local minima. We detail our stability prior and optimization strategy in the following sections.

## 6.2 Suspension Orientation

As described in section 3.2, the orientation chosen to hang the formwork during casting affects the final deformed shape. We make the observation that orientations with greater suspension stability have a higher chance to retain their original shape. Intuitively, if suspension contact forces do not balance the self-weight, the shape will undergo large deformations to achieve an equilibrium configuration.

We introduce a stability map, $\Phi(\mathbf{d})$, that acts as a prior for estimating the globally optimal orientation. The distribution of $\Phi(\mathbf{d})$ gives the suspension stability along different orientations. We employ a sampling based algorithm similar to [Bharaj et al. 2015] where initial values for gradient-based optimization (of Eq. (9)) are then determined via searching the peaks of $\Phi$.

Our method for efficiently populating $\Phi$ is motivated by [Fu et al. 2008], where stability is measured using the relative position of the projected center of mass $c_{prj}$ on the suspension plane, $P_{sus}$.

We define the suspension polygon as the convex hull of all suspension points on $P_{sus}$ (dotted lines in inset 'S' example). We also compute a projection of the model's 3D convex-hull on $P_{sus}$ (red polygon). Along a given direction $\theta$ on the plane, the signed distance from $c_{prj}$ (purple point) to the boundary of the suspension polygon is defined as $D_{in}(\theta, \mathbf{d})$. A negative value means $c_{prj}$ is outside the suspension polygon. Similarly, $D_{out}(\theta, \mathbf{d})$ defines the distance between $c_{prj}$ and the boundary of the projected 3D convex-hull. We compute the suspension stability w.r.t. orientation $\mathbf{d}$ as

$$\Phi(\mathbf{d}) = \min_{\theta} \frac{D_{in}(\theta, \mathbf{d})}{D_{out}(\theta, \mathbf{d})} \quad (10)$$

In this formula, the ratio indicates resistance to toppling along direction $\theta$ - i.e., the larger the more stable a configuration it is.

In our implementation, 10k points are sampled on the Gaussian sphere to obtain a distribution of $\Phi(\mathbf{d})$, and normalized to $[0, 1]$ to obtain $\hat{\Phi}(\mathbf{d})$. Figure 6 illustrates $\hat{\Phi}(\mathbf{d})$ for an 'S' shaped target; (a)-(e) show the result of the optimized

shape, where orientation is initialized to a peak on the stability map.

Note that some orientations can lead to a complicated suspension frame for fabrication. For example, directions 'g' and 'h' in Figure 6 require an S-shaped suspension region. We evaluate a compactness metric defined as the ratio of the boundary length to the area of the suspended region; the smaller the more compact. For orientations with large compactness ratios, users can assign its corresponding $\hat{\Phi}(\mathbf{d})$ as zero to avoid complicated fabrication (as in Fig. 6).

## 6.3 Sampling-Based Numerical Computation

The difficulty in optimizing orientation is that the pressure forces, $f_p$, are highly nonlinear with respect to orientation. The zero-pressure reference varies when changing $\mathbf{d}$, and such change is not continuous as it involves finding the extreme points on the model. Given

<figure><img src="image_7.png" /></figure>
<figure><img src="image_8.png" /><figcaption>Fig. 6. Stability prior for finding optimal fabrication orientations. Color map displays stability values, $\hat{\Phi}(d)$ by Eq.(10), at orientations sampled on the Gaussian sphere (flattened to 2D for illustration). (a)-(e) correspond to peaks in stability map. Shapes show result of local gradient-based optimization, from the stated initial orientation. Orientation (a) gives the best result. Points ‘g’ and ‘h’ are assigned zero to avoid a complicated suspension frame for fabrication (orientations are perpendicular to the plane of the letter).</figcaption></figure>

the stability map, $\hat{\Phi}(d)$, we introduce a sampling-based approach for estimating the globally optimal orientation, $d$.

We denote $d_s$ as the orientation with maximum suspension stability, which corresponds to the max value on the stability map, $\hat{\Phi}(d)$. Our strategy involves running gradient-based optimization (to solve the problem defined in Eq. (9)) from a series of starting points, where the initial values are sampled from the peaks of the stability map. To avoid computational redundancy, we reduce the value of $\hat{\Phi}(d)$ on orientations that have been explored. Inspired by [Bharaj et al. 2015], we employ a probability based strategy:

(1) Choose sample point $d_s = \arg \max \hat{\Phi}(d)$.

(2) Perform local gradient-based optimization (Eq. (9)) initialized at orientation $d_s$. Note the optimization simultaneously updates the hanging orientation and panel shapes.

(3) The set $D_p$ contains all orientations visited during step (2). Fit $D_p$ to a normal distribution $pdf(d)$ with dimension $k = 2$ ($d$ is defined on spherical coordinates).

(4) Update the prior as $\hat{\Phi}(d) = (1 - pdf(d)) \hat{\Phi}(d)$. This lowers the probability that the region explored in step (2) will be selected again as a starting orientation in future iterations.

(5) Repeat from step (1) if $\max(\hat{\Phi}(d)) \ge \tau$.

(6) Among all solutions of the gradient-based optimization, select the one that gives the smallest value for the objective function in Eq.(9).

By this method, we can determine the optimized flat panels together with an optimized orientation for fabrication. $\tau = 0.3$ is adopted in our implementation. We solve Eq. (9) using the interior point optimizer (Ipopt) [Wächter and Biegler 2006] for our large-scale nonlinear optimization. We compute the force Jacobian and gradient

<figure><img src="image_9.png" /><figcaption>Fig. 7. Examples of optimized letter models. (Yellow) Optimized shape computed by our framework. (Blue) Deformed shape with unoptimized panels shown for comparison. (Multicolor) Design configuration with panels displayed in different colors and rotated according to fabrication orientation.</figcaption></figure>

of the objective functions analytically to avoid slow computation and inaccuracy from finite differencing. To further accelerate the computation, an approximation method is used for the zero pressure reference, $\bar{x}_d$. We sample the orientation space and set $\bar{x}_d$ to be constant within each sample region.

## 6.4 Panel Initialization

A good initial guess of the rest shape $X$ plays an important role in the convergence of the optimization. To obtain $X$ from a target shape $\tilde{X}$, we first segment $\tilde{X}$ into nearly planar patches in 3D using an error-controlled variation of the *Variational Segmentation Approximation* (VSA) method [Cohen-Steiner et al. 2004]. After that, a boundary-length preserving surface flattening [Wang 2008] is applied to obtain the initial shape of the flat panels. Alternative methods for developable mesh segmentation could also be used such as D-Charts [Julius et al. 2005].

## 6.5 Remeshing

The optimization procedure may also face topological obstacles. Remeshing steps have been integrated into the optimization to overcome degeneracies. Specifically, when badly shaped triangles occur (e.g., aspect ratio above 40.0), the flat panels are remeshed by constrained Delaunay triangulation [Shewchuk 1996]. The remeshed flat panels can be transferred onto the 3D deformed shape with the help of barycentric coordinates.

# 7 SUPPORT PLACEMENT

In some scenarios updating the panel shapes and orientation will not lead to an optimization result that is sufficiently similar to the target. In such cases, the result can be improved by adding external supports which significantly expands the design space. In Sec. 4 we introduced three different types of supports that can be included in our framework: strings, cables and planes. Choosing the locations of these external supports is challenging as it changes the topology of the structural system. We propose strategies to automatically determine effective locations for each support type based on analysis of deformation errors.
<figure><img src="image_10.png" /><figcaption>Fig. 8. Plane support placement. (Left) Error map of point-to-point surface distance, shown on deformed shape. (Middle) Plane support placed under tabletop to prevent sag. (Right) Fabrication setup.</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>Fig. 9. String support placement according to different error maps. (Left) Point-to-point surface distance. (Middle) Surface distance, restricted to external strings candidate locations. (Right) Heuristic method that favors points higher on the model. $E_{max}$, $E_{avg}$: error after adding string support.</figcaption></figure>

### 7.0.1 Planes.
Planes enforce flat sections in regions that would naturally sag, such as the seat of the chair model in Fig. 5. Two criteria indicate that a plane support is needed: i) a continuous nearly-planar region exists on the target shape; ii) the corresponding region on the deformed shape has large shape discrepancy. Similar to the panel initialization in Sec. 6.4, we find planar regions on the target shape $\hat{X}$ using VSA [Cohen-Steiner et al. 2004] with a more conservative error parameter. Any planar patch with surface area smaller than a tolerance $\tau_A$ is rejected. If the total shape deviation error over a patch is larger than a threshold $\tau_{ep1}$, we assign a plane support to that mesh region. We use point-to-point surface distance to describe the shape error (Eq. (4)). In Figure 8 the underside of the tabletop is identified by our strategy, and a rigid planar support is included in the fabrication setup.

### 7.0.2 Strings.
Strings provide additional uplift and are helpful in supporting, e.g., overhanging features. Our strategy for determining good string locations is to first optimize the unsupported shape, then analyze the shape discrepancy in comparison to the target. Our initial approach was to place a string at the location of maximum shape deviation. However, on further inspection we observed that strings placed higher on the model tended to provide better shape correction. Intuitively, string supports correct for sagging on surface

<figure><img src="image_12.png" /><figcaption>Fig. 10. String support placement on the star and fertility models using our heuristic error metric.</figcaption></figure>

<figure><img src="image_13.png" /><figcaption>Fig. 11. Cable support placement. (Left) Candidate cable loop locations using method of Kwok et al. [2016]. (Right) Error map based on edge lengths of target vs. optimized ( unsupported) shape.</figcaption></figure>

points at and below the attachment point. Figure 9 shows three alternative error metrics to illustrate this effect:

(1) Point-to-point surface distance of the target shape vs. optimized shape (without string support) using the shape deviation metric $||\bar{x}_i - \hat{x}_i||^2$ from Eq. (4). See Fig. 9 (left).

(2) Restricted version of (1) where only external strings are permitted. We omit points where the suspended string would intersect the model. This accounts for conservative fabrication constraints. See Fig. 9 (middle).

(3) We propose a modified heuristic error metric that favors points higher on the model and prioritizes vertical sagging. We scale the point-to-point surface distance by its height $h$ along the fabrication direction and consider only the error in the suspension direction: $h(\bar{x}_i, d)((\bar{x}_i - \hat{x}_i) \cdot d)^2$. See Fig. 9 (right).

As shown in Fig. 9, the string is attached at the point of maximum error in each case. We compare the optimization results for each string placement: $E_{max}$ and $E_{avg}$ are the maximum and average error in the optimized shape after applying the string support. Our heuristic strategy achieves a better match to the target shape. Fig. 10 shows additional examples of support placement using our heuristic method.

### 7.0.3 Cables.
Cables assist in creating locally concave features by restricting the length of a closed loop on the surface. Our strategy for automatic placement is to first identify candidate loop locations then select based on a shape deviation metric. We generate candidates $C_\ell$ using the method of Kwok et al. [2016], which applies the concept of stretching ropes on the 3D surface. We find local minimal rings by calculating the Reeb graph of the height function on the target model (independent of fabrication orientation). Given the
optimized unsupported shape, we accumulate the error over each candidate loop and place a cable on the loop with largest average error: $\sum_{\vec{e}_{ij} \in C_t} (|\vec{e}_{ij}| - |\hat{e}_{ij}|)^+/\text{length}(C_t)$. The error measures fabric stretch from the target, where $e_{ij}$ refers to edges between neighboring vertices; '+' indicates only positive stretch values are considered (tensioned edges). This reflects the influence of cables to increase fabric stiffness. Figure 11 shows candidate loops on the duck model; the color map indicates that fabric stretch is highest along the neck. See Fig. 17 for the final configuration and fabricated result.

In our methodology we begin by processing plane supports since they influence large regions on the model. Strings and cables are processed next. E.g., for the fertility model (Figs. 1, 10) first a plane support is added to prevent sagging of the base. The shape deviation at the arms is then corrected with string supports.

# 8 RESULTS

## 8.1 Material Parameters

We experimentally determined the material parameters of the cloth panels. In order to simulate the orthotropic behavior of the knitted fabric, we performed in-plane stretch tests on strip samples along the warp and weft directions (Fig. 12 (left)). We obtained Young's modulus by uniaxial tensile tests with a Tinius Olsen H5KS Tester machine and Poisson's ratio by measuring distances between reference points when stretched. The line segment drawn on the material strip in Fig. 12 indicates the x-axis orientation (warp direction). We validated the material parameters using a cylindrical container with 8.4 cm diameter and 21 cm height (undeformed dimensions). The calibration procedure involved updating the parameters of our physical model such that the deformed height and width of the simulation matched the physical prototype (see Fig. 12 (right)). The final values were $[E_x, E_y] = [178.34, 98.14]$ MPa for Young's modulus and $[\nu_x, \nu_y] = [0.39, 0.25]$ for Poisson's ratio. After obtaining these values, we are able to form the stiffness matrix of orthotropic cloth for evaluating the total elastic energy $W(E)$ in Eq.(1). Weight of the cotton fabric was measured using a Hildebrand Densimeter Model H-300 S, and the cloth thickness was 0.59 mm. Density of the plaster was given as 1130 $kg/m^3$.

We used an orthotropic material model to improve the accuracy of our simulation. To measure how weave orientation influences our results, we tested our optimization on the cylinder model (Fig. 12) with the panels rotated 45 degrees. Max shape deviation was 1.5 mm (cylinder height 210 mm), comparing the deformed models with and without panel rotation. In future work, adding parameters for panel orientation could improve the optimization result.

## 8.2 Validation

We demonstrate our results in Figs. 1, 3 and 5-17. In Fig. 14, we show the initial panel segmentation for several flat fabric panels of the fertility model, compared to the result after optimization. In Figs. 3 and 17, we provide a comparison between the target (green), the deformed result based on the initial unoptimized flat panels (blue), and our optimization result (yellow). In addition, we illustrate the optimal orientation – the paneled models are rotated to their fabrication direction, where the black lines along the top indicate the suspension polygon.

<figure><img src="image_14.png" /><figcaption>Fig. 12. Calibration process for measuring material parameters. (Left) Distances between reference points on strip samples are measured during uniaxial stretching to find Young's modulus and Poisson's ratio. (Right) Simulation and fabrication of a cylindrical formwork shape for validation.</figcaption></figure>

<table><caption>Table 1. Design configurations of example results detailing number of panels used in the rest shape, type of external supports, the model's dimensions ($w \times h \times d$), and average running time for local optimization.</caption><thead><tr><th>model</th><th>panels</th><th>supports</th><th>dimensions (m)</th><th>time (s)</th></tr></thead><tbody><tr><td>Fertility* (Fig. 1)</td><td>8</td><td>2 strings, 1 plane</td><td>0.75 × 0.54 × 0.29</td><td>582</td></tr><tr><td>Elephant (Fig. 3)</td><td>5</td><td>n/a</td><td>0.33 × 0.40 × 0.15</td><td>498</td></tr><tr><td>S letter (Fig. 7)</td><td>10</td><td>n/a</td><td>0.46 × 0.46 × 0.14</td><td>718</td></tr><tr><td>G letter (Fig. 7)</td><td>12</td><td>n/a</td><td>0.56 × 0.60 × 0.14</td><td>1019</td></tr><tr><td>H letter (Fig. 7)</td><td>8</td><td>n/a</td><td>0.54 × 0.60 × 0.14</td><td>224</td></tr><tr><td>Star* (Fig. 17)</td><td>14</td><td>4 strings</td><td>0.42 × 0.38 × 0.054</td><td>1167</td></tr><tr><td>Chair* (Fig. 17)</td><td>8</td><td>4 planes</td><td>0.44 × 0.45 × 0.46</td><td>385</td></tr><tr><td>Table* (Fig. 17)</td><td>11</td><td>1 plane</td><td>0.43 × 0.56 × 0.43</td><td>630</td></tr><tr><td>Duck* (Fig. 17)</td><td>12</td><td>1 string, 1 cable</td><td>0.36 × 0.33 × 0.29</td><td>141</td></tr></tbody></table>

For the elephant shape in Fig. 3 we visualize the surface distance between the optimized and target shapes (see Fig. 15). The largest discrepancies occur in the elephant's eye area which is locally concave on the target, and on the trunk due to its arched shape. The maximum discrepancy is 16.4 mm, which is 3% the diagonal length of the model's bounding box (dimensions given in Table 1).

For the chair model (Fig. 17) the optimal fabrication direction is 4.5 degrees from its upside-down orientation. We found small changes in the orientation matter. Without the 4.5 degree rotation, the average shape deviation error (point-to-surface) increases by 17.8%. The optimal S model (Fig. 6) is rotated by 2.0 degrees from its left-side-up orientation. The 2.0 degree rotation reduces the average shape deviation error (point-to-surface) by 11.5%. Choosing the fabrication orientation is often not intuitive. Even the nearly symmetric orientations of the S model give different results. The average shape deviation error for orientation (a) is 6.48 mm, and for orientation (d) is 8.05 mm (see Fig. 6).

## 8.3 Fabricated Results

We further validated our approach by creating physical prototypes as shown in Fig. 13 and Fig. 17. To hang the formwork, we used nails to fix the fabric container on the frame (see Fig. 2). The plaster liquid has very high viscosity, which makes it challenging to fill into narrow regions of a fabric container. Except for the chair model,

<footnote>* indicates models that were fabricated for validation.</footnote>
<figure><img src="image_15.png" /><figcaption>Fig. 13. Fabric formwork. (Left) Star model with four string supports. (Middle) Chair model with four planes. (Right) Duck model with a cable and a string support.</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>Fig. 14. Panel optimization. (Left) Optimized 3D shape. (Right) Comparison of the initial (wireframe) and the optimized (solid) 2D shape for a selection of panels.</figcaption></figure>

we always first fill with water to inflate the fabric container before pouring in the plaster liquid to overcome this difficulty. We joined the fabric panels at corresponding seams using a sewing machine and a standard straight stitch. See the supplementary video for an overview of our fabrication process. If extending this work to larger scale construction, alternative panel connections may be necessary, such as redundant parallel seams or heat welding with plastic coated fabrics as discussed by West [2016]. A variety of textiles have also been studied by Brennan et al. [2013] for resistance to tearing and bursting, and controlled permeability and porosity.

## 8.4 External Supports

Determining the support types and locations is fully automatic in our method. External supports are applied on several of our models, see Fig. 17 for results of our physical experiments. The fertility model uses two strings which supports the arched overhanging arms, as well as a plane support. The table model uses one plane support. The string support on the duck model counteracts sagging of the head and back, and the cable creates a sharp concave crease around the neck. For the chair model, four plane supports are applied to create the large flat surfaces. The star model relies on string supports, which are helpful in holding the vertical position of its lower inner corners. Table 1 lists design configurations for all examples.

## 8.5 Panel Configuration

We observed that the optimization results are affected by the number of flat panels since more panels gives more deformation space to match the target. However, there is a tradeoff between the number of panels and the sewing complexity. In our results, we choose the least number of panels subject to a satisfactory optimization. In

<figure><img src="image_17.png" /><figcaption>Fig. 15. (Left, Middle) Comparison of the optimized (wireframe) and the target (solid) elephant model. (Right) Surface distances are shown as a color-map on the optimized model. The model's height is 0.4 m.</figcaption></figure>

<figure><img src="image_18.png" /><figcaption>Fig. 16. The location of wrinkles on a fabricated model can be well predicted (red regions in colormap) by analyzing principal stretch values.</figcaption></figure>

some cases, automatic segmentation by VSA could lead to slow convergence rate, we manually subdivided the patches for acceleration purposes (e.g., the purple and orange patches of 'G' model in Fig. 7).

## 8.6 Predicting Wrinkles

Wrinkles will form on flexible membranes in order to accommodate compression. Producing detailed wrinkle geometry in the simulation and optimization requires high resolution meshes. Instead, we use inexpensive simulation with low dimensional models, and indicate the locations of the expected wrinkles. Using the evaluation described in [Skouras et al. 2014] we find principle stretches, $\lambda_1$ and $\lambda_2$, on the deformed membrane given by the eigenvalues of the right Cauchy-Green deformation tensor. Comparing to the rest status of the membrane, wrinkles occur when $\lambda_1 \ge 1$ (positive stretch) and $\lambda_2 < 1/\sqrt{\lambda_1}$ (compression). The colormap in Fig. 16 indicates probable wrinkle locations, with red corresponding to the deformation values $\lambda_2 \in [0.5, 1]$. There is a close visual match between the predicted wrinkle locations and the physical prototype.

In our tension-dominated physical system, compression fields (manifested as wrinkles), mean that we locally have too much material. This typically happens in areas approximating regions with non-zero Gaussian curvature, which cannot be approximated properly using a unique developable surface. The visualization (Fig. 16) lets the user decide whether to use more panels or insert darts to decrease the number of wrinkles. Automatically resegmenting panels to reduce wrinkles is left for future work.
<figure><img src="image_19.png" /><figcaption>Fig. 17. Fabricated models. (Green) Target shape. (Blue) Deformed target shape simulated under force equilibrium (non-optimized panels). (Yellow) Optimized result: deformed shape with optimized panels, orientation, and external supports. (Inner-Right) Design configuration: colors correspond to individual panels, shown mapped onto the 3D shape. Gray lines indicate seams. Thick black lines along the top denote the suspension contact points. The fertility and star models both employ strings (dark purple lines). The chair uses four plane supports. The duck uses a string and a cable (red line) around the neck. A plane support is used for the table model under the green panel. Models shown in their optimized suspension orientation. (Right) Final plaster model resulting from the fabric formwork construction.</figcaption></figure>
## 8.7 Limitations

A limitation of our physical model is that we assume continuous fabric. This does not account for variation in rigidity due to the presence of seams, which may lead to differences between the physical prototype and simulation (and therefore also affects the result of optimization). For example, bumps appear on one leg of the fabricated table model (Fig. 17), which are in proximity to sharp corners in the seams.

When adding external supports, large stiffness is employed for the forces generated by these supports – as a result, the computation does not converge as easily as ‘soft’ systems.

There are several sources of error brought from tolerances in the fabrication process, which can lead to discrepancies from the simulation. The panels were manually cut and sewn. The plaster infill was made by a water-powder mixture that could have nonuniform density if imperfectly mixed. The plaster’s density and curing time is also affected by environmental conditions such as ambient temperature and humidity, making it difficult to consistently control the quality of fabrication. Under high temperatures the plaster also becomes highly viscous and more challenging to fill the plaster throughout the whole volume of the container. Improving the experimental process is important future work to further promote this fabrication method of fabric formwork to industry.

Although external supports expand the space of possible designs, there are still limitations in the range of shapes we can generate. Our current method cannot reproduce creases that are not closed. Sharp features are also difficult to achieve due to force equilibrium conditions, but can be approximated with external supports. Some shapes are attainable with many supports (e.g. the “∩” shape is possible if we add enough strings on the arc to create the curve). However, each external support adds to the complexity of fabrication. Our method optimizes panels and orientation to minimize the need for external supports.

## 9 CONCLUSION

This paper presents an algorithm for the inverse design of fabric formwork that can fabricate large-scale physical objects. We provide a computational tool to find a set of optimized flat panels and the ‘best’ fabrication orientation. In combination with external supports, the fabric container sewn from these optimized flat panels allows the resultant deformed shape to match a target shape. Our system solves a constrained optimization problem with five integrated design metrics as the objective function. As a design tool, users can freely change the balance between these metrics by adjusting weights to reflect their design priorities. We have developed a prototype system by the technique proposed in this paper, and also validated our approach on physically fabricated models. In short, our approach provides an effective tool to users to fabricate the final models that nicely match the target shapes.

## ACKNOWLEDGMENTS

The authors would like to thank Zezhou Sun for producing renderings and Qinglong Zhang for assisting with fabrication. Models were provided courtesy of AIM@SHAPE (fertility), 3dcadhelp (elephant),

and CGTrader (duck). This work is supported by the National Science Foundation under Grant No.: 1813319, CUHK Direct Research Grant No.: 4055094 and Department of Design Engineering at TU Delft QBG021.

## REFERENCES

Hee-Kap Ahn, Mark De Berg, Prosenjit Bose, Siu-Wing Cheng, Dan Halperin, Jiri Matoušek, and Otfried Schwarzkopf. 2002. Separating an object from its cast. *Computer-Aided Design* 34, 8 (2002), 547–559.

Thomas Alderighi, Luigi Malomo, Daniela Giorgi, Nico Pietroni, Bernd Bickel, and Paolo Cignoni. 2018. Metamolds: computational design of silicone molds. *ACM Transactions on Graphics* (TOG) 37, 4 (2018), 136.

Aric Bartle, Alla Sheffer, Vladimir G. Kim, Danny M. Kaufman, Nicholas Vining, and Flo raine Berthouzoz. 2016. Physics-driven Pattern Adjustment for Direct 3D Garment Editing. *ACM Trans. Graph*. 35, 4, Article 50 (July 2016), 11 pages.

James M. Bern, Kai-Hung Chang, and Stelian Coros. 2017. Interactive Design of Ani- mated Plushies. *ACM Trans. Graph*. 36, 4, Article 80 (July 2017), 11 pages.

Gaurav Bharaj, David IW Levin, James Tompkin, Yun Fei, Hanspeter Pfister, Wojciech Matusik, and Changxi Zheng. 2015. Computational design of metallophone contact sounds. *ACM Transactions on Graphics* (TOG) 34, 6 (2015), 223.

Bernd Bickel, Moritz Bächer, Miguel A Otaduy, Hyunho Richard Lee, Hanspeter Pfister, Markus Gross, and Wojciech Matusik. 2010. Design and Fabrication of Materials with Desired Deformation Behavior. *ACM Trans. Graph*. 29, 4, Article 63 (July 2010), 10 pages.

Robert Bogue. 2013. 3D printing: The dawn of a new era in manufacturing? *Assembly Automation* 33, 4 (2013), 307–311.

Javier Bonet and Richard D Wood. 1997. *Nonlinear continuum mechanics for finite element analysis*. Cambridge university press.

Sofien Bouaziz, Sebastian Martin, Tiantian Liu, Ladislav Kavan, and Mark Pauly. 2014. Projective Dynamics: Fusing Constraint Projections for Fast Simulation. *ACM Trans. Graph*. 33, 4, Article 154 (July 2014), 11 pages.

Julie Brennan, Remo Pedreschi, Peter Walker, and Martin Ansell. 2013. The poten- tial of advanced textiles for fabric formwork. *Institute of Civil Engineering (ICE)-Construction Materials Journal* 166, 4 (2013), 229–237.

Richard A Buswell, RC Soar, Alistair GF Gibb, and A Thorpe. 2007. Freeform construc- tions: mega-scale rapid manufacturing for construction. *Automation in construction* 16, 2 (2007), 224–231.

Yunus A. Çengel and John M. Cimbala. 2017. *Fluid Mechanics: Fundamentals and Applications*. McGraw-Hill.

Xuelin Chen, Hao Zhang, Jinjie Lin, Ruizhen Hu, Lin Lu, Qi-Xing Huang, Bedrich Benes, Daniel Cohen-Or, and Baoquan Chen. 2015. Dapper: decompose-and-pack for 3D printing. *ACM Trans. Graph*. 34, 6 (2015), 213.

Xiang Chen, Changxi Zheng, Weiwei Xu, and Kun Zhou. 2014. An asymptotic numerical method for inverse elastic shape design. *ACM Trans. Graph*. 33, 4 (2014), 95.

Kwang-Jin Choi and Hyeong-Seok Ko. 2002. Stable but Responsive Cloth. *ACM Trans. Graph*. 21, 3 (July 2002), 604–611.

David Cohen-Steiner, Pierre Alliez, and Mathieu Desbrun. 2004. Variational shape approximation. In *ACM Transactions on Graphics* (TOG), Vol. 23. ACM, 905–914.

James A Fay. 1994. *Introduction to fluid mechanics*. MIT press.

Robert M Foster and Tim J Ibell. 2016. A numerical solution for the shape of fabric- formed concrete structures. In *Structures*, Vol. 8. Elsevier, 17–24.

Hongbo Fu, Daniel Cohen-Or, Gideon Dror, and Alla Sheffer. 2008. Upright orientation of man-made objects. In *ACM transactions on graphics (TOG)*, Vol. 27. ACM, 42.

MA Ganter and PA Skoglund. 1993. Feature extraction for casting core development. *Journal of Mechanical Design* 115, 4 (1993), 744–750.

Rony Goldenthal, David Harmon, Raanan Fattal, Michel Bercovier, and Eitan Grinspun. 2007. Efficient Simulation of Inextensible Cloth. *ACM Trans. Graph*. 26, 3, Article 49 (July 2007).

Clément Gosselin, Romain Duballet, Ph Roux, Nadja Gaudillière, Justin Dirrenberger, and Ph Morel. 2016. Large-scale 3D printing of ultra-high performance concrete-a new processing route for architects and builders. *Materials & Design* 100 (2016), 102–109.

Mikell P. Groover. 2011. Part II – Solidification Processes. In *Introduction to Manufactur- ing Processes*.

Steffen Grunewald, Bas Janssen, Roel Schipper, K J. Vollers, and J C. Walraven. 2012. Deliberate deformation of concrete after casting. In *Proceedings of the Second International Conference on Flexible Formwork*.

Ruslan Guseinov, Eder Miguel, and Bernd Bickel. 2017. CurveUps: Shaping Objects from Flat Plates with Tension-Actuated Curvature. *ACM Transactions on Graphics* (SIGGRAPH 2017) 36, 4 (2017).

W.J. Hawkins, H. Herrmann, T.J. Ibell, B. Kromoser, A. Michaelski, J.J. Orr, R. Pedreschi, A. Pronk, R. Schipper, P. Shepherd, D. Veenendaal, R. Wansdronk, and M. West. 2016. Flexible formwork technologies: A state of the art review. *Structural Concrete* 17, 6 (December 2016). https://doi.org/10.1002/suco.201600117
Ruizhen Hu, Honghua Li, Hao Zhang, and Daniel Cohen-Or. 2014. Approximate pyramidal shape decomposition. *ACM Trans. Graph.* 33, 6 (2014), 213–1.

Mary Krumboltz Hurd. 1995. Formwork for concrete. (2005).

Dan Julius, Vladislav Kraevoy, and Alla Sheffer. 2005. D-Charts: Quasi-Developable Mesh Segmentation. *Computer Graphics Forum* (2005).

Behrokh Khoshnevis. 2004. Automated construction by contour crafting-related robotics and information technologies. *Automation in Construction* 13, 1 (2004), 5–19.

Martin Kilian, Simon Flöry, Zhonggui Chen, Niloy J. Mitra, Alla Sheffer, and Helmut Pottmann. 2008. Curved Folding. *ACM Trans. Graph.* 27, 3, Article 75 (Aug. 2008), 9 pages.

Tsz-Ho Kwok, Weiwei Wan, Jia Pan, Charlie CL Wang, Jianjun Yuan, Kensuke Harada, and Yong Chen. 2016. Rope caging and grasping. In *Robotics and Automation (ICRA), 2016 IEEE International Conference on*. IEEE, 1980–1986.

Thanh T Le, Simon A Austin, Sungwoo Lim, Richard A Buswell, Alistair GF Gibb, and Tony Thorpe. 2012. Mix design and fresh properties for high-performance printing concrete. *Materials and structures* 45, 8 (2012), 1221–1232.

Alan C Lin and Nguyen Huu Quang. 2014. Automatic generation of mold-piece regions and parting curves for complex CAD models in multi-piece mold design. *Computer-Aided Design* 57 (2014), 15–28.

Yang Liu, Helmut Pottmann, Johannes Wallner, Yong-Liang Yang, and Wenping Wang. 2006. Geometric Modeling with Conical Meshes and Developable Surfaces. *ACM Trans. Graph.* 25, 3 (July 2006), 681–689.

Linjie Luo, Ilya Baran, Szymon Rusinkiewicz, and Wojciech Matusik. 2012. Chopper: Partitioning Models into 3D-printable Parts. *ACM Trans. Graph.* 31, 6, Article 129 (Nov. 2012), 9 pages.

Luigi Malomo, Nico Pietroni, Bernd Bickel, and Paolo Cignoni. 2016. FlexMolds: Automatic Design of Flexible Shells for Molding. *ACM Trans. Graph.* 35, 6, Article 223 (Nov. 2016), 12 pages.

Sebastian Martin, Peter Kaufmann, Mario Botsch, Eitan Grinspun, and Markus Gross. 2010. Unified Simulation of Elastic Rods, Shells, and Solids. *ACM Trans. Graph.* 29, 4, Article 39 (July 2010), 10 pages.

Jun Mitani and Hiromasa Suzuki. 2004. Making Papercraft Toys from Meshes Using Strip-based Approximate Unfolding. *ACM Trans. Graph.* 23, 3 (Aug. 2004), 259–263.

Yuki Mori and Takeo Igarashi. 2007. Plushie: An Interactive Design System for Plush Toys. *ACM Trans. Graph.* 26, 3, Article 45 (July 2007).

Kazutaka Nakashima, Thomas Auzinger, Emmanuel Iarussi, Ran Zhang, Takeo Igarashi, and Bernd Bickel. 2018. CoreCavity: interactive shell decomposition for fabrication with two-piece rigid molds. *ACM Transactions on Graphics (TOG)* 37, 4 (2018), 135.

Raymond W Ogden. 1997. *Non-linear elastic deformations*. Courier Corporation.

John Jr Orr, Anthony P Darby, Timothy J Ibell, MC Everdlen, and Mike Otlet. 2011. Concrete structures using fabric formwork. *The Structural Engineer* 89, 8 (2011), 20–26.

Julian Panetta, Qingnan Zhou, Luigi Malomo, Nico Pietroni, Paolo Cignoni, and Denis Zorin. 2015. Elastic textures for additive fabrication. *ACM Transactions on Graphics (TOG)* 34, 4 (2015), 135.

Jesús Pérez, Miguel A. Oteduy, and Bernhard Thomaszewski. 2017. Computational Design and Automated Fabrication of Kirchhoff-plateau Surfaces. *ACM Trans. Graph.* 36, 4, Article 62 (July 2017), 12 pages.

Jesús Pérez, Bernhard Thomaszewski, Stelian Coros, Bernd Bickel, José A Canabal, Robert Sumner, and Miguel A Oteduy. 2015. Design and fabrication of flexible rod meshes. *ACM Transactions on Graphics (TOG)* 34, 4 (2015), 138.

M. Popescu, L. Reiter, A. Liew, T. Van Mele, R.J. Flatt, and P. Block. 2018. Building in concrete with a knitted stay-in-place formwork: Prototype of a concrete shell bridge. *Structures* 14 (June 2018), 322–332. https://doi.org/10.1016/j.istruc.2018.03.001

M. Popescu, M. Rippmann, T. Van Mele, and P. Block. 2017. Automated generation of knit patterns for non-developable surfaces. In *Humanizing Digital Reality - Proceedings of the Design Modelling Symposium 2017*, K. De Rycke et al. (Ed.). Springer, Paris, 271–284. https://doi.org/10.1007/978-981-10-6611-5_24

Michael Rabinovich, Tim Hoffmann, and Olga Sorkine-Hornung. 2018. Discrete Geodesic Nets for Modeling Developable Surfaces. *ACM Trans. Graph.* 37, 2 (2018).

Kenneth Rose, Alla Sheffer, Jamie Wither, Marie-Paule Cani, and Boris Thibert. 2007. Developable Surfaces from Arbitrary Sketched Boundaries. In *Proceedings of the Fifth Eurographics Symposium on Geometry Processing (SGP '07)*. 163–172.

Robert P Schmitz. 2006. Fabric-formed concrete panel design. In *Building Integration Solutions*. 1–15.

Camille Schreck, Damien Rohmer, Stefanie Hahmann, Marie-Paule Cani, Shuo Jin, Charlie C. L. Wang, and Jean-Francis Bloch. 2015. Nonsmooth Developable Geometry for Interactively Animating Paper Crumpling. *ACM Trans. Graph.* 35, 1, Article 10 (Dec. 2015), 18 pages.

Christian Schüller, Daniele Panozzo, Anselm Grundhöfer, Henning Zimmer, Evgeni Sorkine, and Olga Sorkine-Hornung. 2016. Computational Thermoforming. *ACM Trans. Graph.* 35, 4, Article 43 (July 2016), 9 pages.

Christian Schüller, Roi Poranne, and Olga Sorkine-Hornung. 2018. Shape Representation by Zippables. *ACM Trans. Graph*. (Proceedings of ACM SIGGRAPH) 37, 4 (2018).

Christian Schumacher, Bernd Bickel, Jan Rys, Steve Marschner, Chiara Daraio, and Markus Gross. 2015. Microstructures to control elasticity in 3D printing. *ACM

Transactions on Graphics (TOG) 34, 4 (2015), 136.

Idan Shatz, Ayellet Tal, and George Leifman. 2006. Paper craft models from meshes. *The Visual Computer* 22, 9 (01 Sep 2006), 825–834.

Jonathan Richard Shewchuk. 1996. Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. In *Applied computational geometry towards geometric engineering*. Springer, 203–222.

Mélina Skouras, Bernhard Thomaszewski, Stelian Coros, Bernd Bickel, and Markus Gross. 2013. Computational design of actuated deformable characters. *ACM Transactions on Graphics (TOG)* 32, 4 (2013), 82.

Mélina Skouras, Bernhard Thomaszewski, Peter Kaufmann, Akash Garg, Bernd Bickel, Eitan Grinspun, and Markus Gross. 2014. Designing inflatable structures. *ACM Transactions on Graphics (TOG)* 33, 4 (2014), 63.

Peng Song, Bailin Deng, Ziqi Wang, Zhichao Dong, Wei Li, Chi-Wing Fu, and Ligang Liu. 2016. CofiFab: coarse-to-fine fabrication of large 3D objects. *ACM Transactions on Graphics (TOG)* 35, 4 (2016), 45.

Nobuyuki Umetani, Danny M Kaufman, Takeo Igarashi, and Eitan Grinspun. 2011. Sensitive couture for interactive garment modeling and editing. *ACM Trans. Graph.* 30, 4 (2011), 90.

Tom Van Mele and Philippe Block. 2011. A novel form finding method for fabric formwork for concrete shells. *J. Int. Assoc. Shell and Spatial Structures* 52, 21724 (2011), 31.

Juraj Vanek, JA Galicia, Bedrich Benes, R Měch, N Carr, Ondrej Stava, and GS Miller. 2014. Packmerger: A 3d print volume optimizer. In *Computer Graphics Forum*, Vol. 33. Wiley Online Library, 322–332.

D. Veenendaal and P. Block. 2012. Computational form finding for fabric formworks: an overview and discussion. In *Proceedings of the 2nd international conference on flexible formwork*, J. et al. Ohr (Ed.). Bath, UK, 368–378.

Diederik Veenendaal and Philippe Block. 2015. Design process of prestressed membrane formworks for thin-shell structures. In *Proc. Int. Assoc. Shell Spat. Struct. Symp.*

Diederik Veenendaal, Mark West, and Philippe Block. 2011. History and overview of fabric formwork: using fabrics for concrete casting. *Structural Concrete* 12, 3 (2011), 164–177.

Pascal Volino, Martin Courchesne, and Nadia Magnenat-Thalmann. 1995. Versatile and Efficient Techniques for Simulating Cloth and Other Deformable Objects. In *Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '95)*, 137–144.

Pascal Volino, Nadia Magnenat-Thalmann, and Francois Faure. 2009. A simple approach to nonlinear tensile stiffness for accurate cloth simulation. *ACM Transactions on Graphics* 28, 4 (2009), Article–No.

Andreas Wächter and Lorenz T Biegler. 2006. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. *Mathematical programming* 106, 1 (2006), 25–57.

Charlie CL Wang. 2008. Computing length-preserved free boundary for quasi-developable mesh segmentation. *IEEE Transactions on Visualization and Computer Graphics* 14, 1 (2008), 25–36.

Charlie CL Wang and Kai Tang. 2010. Pattern Computation for Compression Garment by a Physical/Geometric Approach. *Comput. Aided Des.* 42, 2 (Feb. 2010), 78–86.

Huamin Wang, James F O'Brien, and Ravi Ramamoorthi. 2011. Data-driven elastic models for cloth: modeling and measurement. In *ACM Transactions on Graphics (TOG)*, Vol. 30. ACM, 71.

Marc Weinstein and Suran Manoochehri. 1996. Geometric influence of a molded part on the draw direction range and parting line locations. *Journal of Mechanical Design* 118, 1 (1996), 29–39.

M West. 2006. Flexible fabric molds for precast trusses. *Betonwerk + Fertigteil-Technik* 72 (01 2006), 46–52.

Mark West. 2016. *The Fabric Formwork Book: Methods for Building New Architectural and Structural Forms in Concrete*. Routledge.

Mark West and Ronnie Araya. 2009. Fabric Formwork for Concrete Structures and Architecture. In *International Conference on Textile Composites and Inflatable Structures*. 184–188.

Xue Yan and PENG Gu. 1996. A review of rapid prototyping technologies and systems. *Computer-Aided Design* 28, 4 (1996), 307–318.

Miaojun Yao, Zhili Chen, Linjie Luo, Rui Wang, and Huamin Wang. 2015. Level-set-based partitioning and packing optimization of a printable model. *ACM Transactions on Graphics (TOG)* 34, 6 (2015), 214.

XG Ye, YJH Fuh, and KS Lee. 2004. Automatic undercut feature recognition for side core design of injection molds. *Journal of Mechanical Design* 126, 3 (2004), 519–526.

XG Ye, Jerry YH Fuh, and Kim Seng Lee. 2001. A hybrid method for recognition of undercut features from moulded parts. *Computer-Aided Design* 33, 14 (2001), 1023–1034.

Jonas Zehnder, Espen Knoop, Moritz Bächer, and Bernhard Thomaszewski. 2017. Metasilicone: Design and Fabrication of Composite Silicone with Desired Mechanical Properties. *ACM Trans. Graph.* 36, 6, Article 240 (Nov. 2017), 13 pages.

Xiaoting Zhang, Xinyi Le, Zihao Wu, Emily Whiting, and Charlie C.L. Wang. 2016. Data-Driven Bending Elasticity Design by Shell Thickness. *Comput. Graph. Forum* 35, 5 (Aug. 2016), 157–166.