Levitating Rigid Objects with Hidden Rods and Wires
Sarah Kushner, Risa Ulinski, Karan Singh, David I.W. Levin, Alec Jacobson
UUnder Review, pp. 1–9
Levitating Rigid Objects with Hidden Support Structures
Sarah Kushner, Risa Ulinski, Karan Singh, David I.W. Levin, Alec Jacobson
University of Toronto
Expected ViewsOur hidden supportsDesired arrangement of levitating objects viewpoint distributions
Figure 1:
Our optimization finds hidden supports to hold rigid objects (green) in their locations despite gravity. Rods (orange) resist tension,compression and bending, while wires (black) resist tension. Supports connect between objects or to the input support surface (blue). Rodsare hidden behind occlusions in the scene for a possibly disconnected distribution of viewpoints (red) provided by the user. Here, a collectionof space-themed objects seemingly hover in the corner of a room. The supporting truss is hidden from the front and through the window.
Abstract
We propose a novel algorithm to efficiently generate hidden structures to support arrangements of floating rigid objects. Ouroptimization finds a small set of rods and wires between objects and each other or a supporting surface (e.g., wall or ceiling)that hold all objects in force and torque equilibrium. Our objective function includes a sparsity inducing total volume term anda linear visibility term based on efficiently pre-computed Monte-Carlo integration, to encourage solutions that are as-hidden-as-possible . The resulting optimization is convex and the global optimum can be efficiently recovered via a linear program.Our representation allows for a user-controllable mixture of tension-, compression-, and bending-resistant rods or tension-onlywires. We explore applications to theatre set design, museum exhibit curation, and other artistic endeavours.
1. Introduction wires rods
Figure 2:
The skeleton of ablue whale levitates with thesupport of wires from aboveand internal rods.
Levitating objects are visuallycompelling and commonly foundin artistic sculptures, film andtheatre set design, promotionaldisplays, and museum exhibits(see Figure 2). This effect is es-pecially impressive if the sup-port structure can be hidden fromthe observer, removing their un-sightly distraction and perhapseven giving the impression thatthe objects in the arrangement aremagically floating in space (see Figure 1). Achieving this is a non-trivial task. Physical stability requires a balance of force and torquefor each rigid component of the scene. This is readily achieved us-ing many strong, thick struts, but their geometry and scene place- ment is likely to compete for visual attention with scene objects,or worse, visually obscure objects in the scene (see Figure 3). Hid-ing these supports by removing or thinning too many struts, on theother hand, will sacrifice physical stability. Thin wires can some-times be used to hang objects, but wires only resist tension so theyalone can not handle situations that are not supported purely fromabove.In this paper, we propose modeling the problem of hidden sup-port structure generation for levitating objects as a form of topol-ogy optimization. We present a novel convex optimization basedon the well-established ground structure method from architectureand engineering. The input to our method is an arrangement of ob-jects in their desired locations and orientations and the distributionof views from which the scene will likely be observed. Our out-put is a collection of rods and wires , described by their requiredthicknesses and attachment points on the input rigid objects, andthe supporting structural element (e.g., wall or ceiling). Our rods submitted to COMPUTER GRAPHICS
Forum (5/2020). a r X i v : . [ c s . G R ] A p r Kushner et al. / Levitating Rigid Objects with Hidden Support Structures
Expected views of supports without visibility consideration
Figure 3:
Without our visibility term, optimal rods may be an un-sightly distraction. model tension, compression and bending resistant materials (e.g.,wooden dowel rods or steel beams). Our wires model tension only(e.g., fishing line or steel cables).Unlike Computer Graphics or Virtual Reality where physicallaws can be bent or broken, support structures in real scenes areonly meaningful if physically valid. Therefore, we enforce physi-cal validity in our optimization as a hard constraint: namely that therigid objects should achieve force and torque equilibrium and thatstresses on rods and wires do not exceed material-dependent yieldlimits. For ease of assembly, cost of manufacturing, and visibilityconsiderations, we prefer support structures composed of a smallnumber of thin, less visible supports. We model these criteria witha sparsity-inducing cost function defined as a sum over a denselyconnected graph of edges (i.e., the ground structure ).Treating the cross-sectional area of each edge as the primary op-timization variable, the traditional ground structure method opti-mizes the total volume (linear in the areas since lengths are prede-termined) and enforces force balance at point loads, by measuringlinearised axial tension and compression forces from each rod, sub-ject to yield limits, expressed as linear inequalities in the unknowncross-section areas and axial stresses of the rods. The result is alinear program whose solution — like many L or Lasso problems— is sparse (most areas are exactly zero), and often agrees exactlywith the NP-hard selection problem (picking the smallest valid sub-set of edges).We augment the traditional ground structure method to supportembedded rigid objects (via linear static equilibrium equations) andaccount for bending resistance of rods (via a simple linear bendingmodel derived from proportionality assumptions). We introduce avisibility objective function that is also linear in the unknown edgeareas and relies on efficient Monte-Carlo based precomputation.Thus, the optimization remains a (convex) linear program and so-lutions can be extracted efficiently (in usually less than a minute).Our experiments satisfyingly confirm that under many condi-tions structurally valid supports are lurking just out of sight: thespace of physically valid supports is vast and finding a completelyoccluded arrangement, is often possible. We demonstrate the ef-fectiveness of our method across a wide variety of test scenes andprototypical use cases.
2. Related Work
Our work sits within the larger literature of computational fabrica-tion, construction and assembly. These subfields are rich and vast,so we focus on previous works most similar in methodology or ap-plication.Previous algorithms exist to make objects stand [PWLS13;VHWP12], spin [BWBS14] or hang from wires [MML16]. Theseworks modify the input objects by redistributing mass or changingtheir shape to achieve the desired goal. In this paper, we explorea complementary contract with the user — how to anchor objectsin the environment without changing the objects themselves. We donot assume that objects were fabricated in a particular manner (e.g.,3D printing).Our approach may be categorized with other structural optimiza-tions for a prescribed static load scenario (i.e., ignoring inertialforces). Recent works increase the stability of fragile objects byadding new new structural elements [ZPZ13; SVB*12; CZT16].For example, Stava et al. add struts to 3D printed objects one-by-one as part of a large optimization loop and use a volumetric sim-ulation as validation. Their strut selection includes an ambient oc-clusion visibility term, but they do not consider the problem of se-lecting an optimal set of supports for rigid objects under prescribedviewing conditions. Other methods have considered the interactivedesign of rod-structures [PTC*15; KSW*17; CZS*19; Jac19] withvarying degrees of physical feasibility checking or optimization inthe system.We model the problem of hiding support structures as a formof topology optimization [LGC*18]. The general idea of topologyoptimization is to prune away material from the volume around theinput objects or load conditions. The resulting geometries typicallyhave interesting topologies/connectivities that would have been dif-ficult to determine a priori . Methods that determine the materialoccupancy of each voxel in a dense grid are well suited for 3Dprinting and milling (e.g., [WDW16]), but will in general producegeometries composed curved and varying thickness elements. Ourmethod instead belongs to the class of ground structure methods[Dor64], which output a discrete collection of (straight) elementsfrom an initial over-connected graph of candidates (see Figure 4).Methodologically we follow most closely the stress-based formu-lation of Zegard et al. [ZP15], and utilize the thesis of Freund[Fre04] as a reference. Ground structure-like methods have beenapplied for designing everything from buildings [ZHMB20] to con-
Figure 4:
Our method constructs a over-connected ground struc-ture of candidate edges (left) then immediately prunes edges thatintersect the scene (middle) and finally extracts a small number ofhidden rods. Savings from pruning can produce × performanceimprovements. submitted to COMPUTER GRAPHICS Forum (5/2020). ushner et al. / Levitating Rigid Objects with Hidden Support Structures rigidobjects Input Output optimized for input viewpoints supportingsurface viewpointdistribution hidden support structure
Figure 5:
The input to our method is a scene composed of many levitating rigid objects. The output of our method is a collection of rodstucked away behind object occlusions, holding each object in force and torque equilibrium under gravity. struction supports [DPW*14] to 3D printable models [WWY*13;JTSW17; HZH*16] to cable-driven automata [MKS*17]. The stan-dard ground structure method considers only consider axial forces.These methods have been applied for rigid structural elements andadapted to special cases like tensegrities [PTV*17; CW96].We use a ground structure approach to model the novel prob-lem of creating hidden structural supports from complex view-point distributions. Crucially, our method supports structural ele-ments that resist compression, tension and bending forces, as wellas wires, without resorting to the nonlinear constitutive models orvolumetric meshing of prior work [SVB*12; PTC*15; HZH*16].Our method trivially couples the structure to the rigid objects itsupports, correctly accounting for both linear forces and torques,without resorting to displacement-based mechanical formulations(e.g., [PTV*17]). This allows us to formulate our problem as a lin-ear program which can be solved efficiently.We draw inspiration from algorithms for appearance-driven op-timization. For instance, Schuller et al. introduce the problem ofgenerating appearance mimicking surfaces from a specified view-point [SPS14]. Several works seek to create 3D shapes that take theform of a set of 2D shapes from corresponding viewpoints or castthe 2D image under certain lighting conditions [MP09; HHC18;STTP14]. Others use viewpoints to create optimal perceptual expe-riences, for example in 3D printing support structures [ZLP*15] orin skyscraper design [DFL*15].
3. Method x x x f f f m k gx k τ τ τ The input to our method is ascene comprised of K rigid ob-jects oriented and positionedin space, a fixed support sur-face (e.g., wall or ceiling),and a distribution of view-points (e.g., discrete set of po-sitions or sample-able proba-bility density function definedon a surface). The output of our method is a supporting structure composed of a small set of rods and wires connecting rigid objects to each other or the supporting surface. Our method ensures thatthis structure holds the input objects in their prescribed positionsand orientations, counter-balancing the force these objects experi-ence due to gravity. Our method optimizes the size and placementof the structure to minimize its overall volume and its visibilitywith respect to the input viewpoint distribution (see Figure 5). Be-fore describing our optimization, we define our physical model andhow we measure visibility. The rigid objects in our scenes experience forces from gravity andat the points of attachment to the supporting structure. To hold arigid body at rest, we must maintain force and torque equilibrium: ∑ i ∈ V k f i = m k g , (1) ∑ i ∈ V k ( x i − x k ) × f i (cid:124) (cid:123)(cid:122) (cid:125) τ i = , (2)where m k , x k , and V k are the mass, center of mass, and set of attach-ment points of the k th object, respectively, and x i , f i , τ i are the 3Dposition of the i th attachment point and corresponding force andtorque vectors, respectively. We assume our support structure undergoes negligible displace-ment, affording a linearization of the internal forces at play. Forstiff rods, we follow the linearised tension and compression modelof [ZP15; Fre04], which introduces a signed scalar value per rod c i ∈ R with units Newtons describing the force in the axial direc-tion parallel to the rod. Assigning an arbitrary direction to the rod i j between endpoint positions x i and x j , then the axial force contri-bution at endpoints i and j are the product of this scalar c i j by therod’s tangent unit direction ˆ t i j = ( x i − x j ) / (cid:107) x i − x j (cid:107) : f i += c i j ˆ t i j and f j += − c i j ˆ t i j . (3)Previous methods (e.g., [ZP15; Fre04]) rely solely on tensionand compression and ignoring the rods’ resistance to bending . submitted to COMPUTER GRAPHICS Forum (5/2020).
Kushner et al. / Levitating Rigid Objects with Hidden Support Structures x i x j ˆ t ij tensionbendingcompression N ij This is a reasonable assumptionin architecture where loads arelarge relative to the rod’s bend-ing strength. Ignoring bending re-quires that either the rods arethicker and thus more visible.This is at odds with the intu-ition that light loads can be heldup with a single bending-resistantrod. In reality, a single rod with fi-nite thickness can apply a distri-bution of forces over its non-zero area contact surface. Since theforce is applied at more than one point, torque balance is also pos-sible. Unfortunately, a volumetric rod model couples the unknownrod diameters and forces non-linearly.To maintain the linearity of our system but also account for bend-ing resistance, we introduce a linearised bending model (see Fig-ure 6). The bending force acts equally (but not oppositely) on eitherend of the rod (does not account for shearing) and is proportionalto the rod’s length. This matches the intuition that it is very difficultto bend a short rod, but easy to bend a long rod of the same thick-ness. For each rod i j , we introduce an arbitrary orthonormal basis N i j ∈ R × for the 2D space orthogonal to the axial direction. Weintroduce a two dimensional parameter b i j ∈ R with units New-tons/meters describing the average force over the rod in the basisdirections. The bending force contributions at endpoints are: f i += (cid:96) i j N i j b i j and f j += (cid:96) i j N i j b i j (4)where (cid:96) i j = (cid:107) x i − x j (cid:107) ∈ R + is the rod’s length.Following previous methods [ZP15; Fre04], we model failurecatastrophically. If the stress due to tension, compression or bend-ing exceeds a material-dependent fixed threshold we declare thatthe rod has exploded (or at least moved too much) and is no longerfeasible. These yield stress can be prescribed for each rod i j andcan be related directly to the non-negative rod cross-sectional area a i j ∈ R ≥ and the force parameters introduced above. Namely, werequire the following convex inequalities to hold: − σ ti j a i j ≤ c i j ≤ σ ci j a i j and (cid:107) b i j (cid:107) ≤ σ bi j a i j (cid:96) i j , (5)where σ ti j , σ ci j , σ bi j are the tension, compression, and bending stressthresholds, respectively. For common rod materials, we find that Tension/compression Bending only*Added bending
Figure 6:
An enormous turkey levitates between two buildings us-ing tension and compression resistant rods (left). Adding bendingresistance affords a less voluminous solution (middle). Restrictingthe ground structure to only include edges perfectly intersecting thecenter of mass ( ∗ ) admits a bending only solution (right). σ ti j ≈ σ ci j >> σ bi j . Although σ t and σ c values for specific materials(e.g., pine wood) can be found in reference books, in our experienceall of these parameters should be empirically estimated, especiallywhen working with low-end materials from the hardware store. Wire-onlysolutions require sup-port from above the ar-rangement’s center ofmass.
A special case of our model is a wire ,which can be thought of as a tension-only rod. A wire i j has zero resis-tance to bending and compression(i.e., σ ci j = σ bi j =
0) and very high re-sistance to tension (i.e., σ ti j >> We define the expected visibility of a rod as function of the inputviewpoint distribution, occlusions due to the scene, the rod’s posi-tion and orientation and its unknown cross-sectional area. For a rod i j , its expected visibility v i j is: v i j = (cid:90) E p ( e ) (cid:90) C ij s ( e , x ) d Ω d e , (6)where s ( e , x ) = (cid:40) ex does not intersect the scene , , where E defines the set of viewpoints and p ( e ) is the probabilitydensity associated with the point e ∈ E , and C i j is the surface of thecylindrical rod with cross-sectional area a i j connecting endpoints x i and x j , and d Ω is the differential solid angle at the correspond-ing integration point x subtended at the viewpoint e . Measuring Our optimized supports
157 wires187 rods 57 objects
Rods highlighted Painted Rods
Figure 8:
We show the rods in orange to demonstrate how hiddenthey are. But we show that the rods connecting the smaller parts(middle) can be painted to blend in with the ceiling (right). submitted to COMPUTER GRAPHICS
Forum (5/2020). ushner et al. / Levitating Rigid Objects with Hidden Support Structures visibility according to solid angle correctly matches the intuitionthat the same size rod farther away from an observer is less visible.The outer integral is immediately as a soft-shadow or area-lightsource evaluation common in rendering. We can approximate thiswell by Monte-Carlo importance sampling over the viewpoint dis-tribution. An analytic expression for the inner integral becomes un-wieldy, so we instead opt for a simple approximation based on uni-form quadrature, accounting for the orientation of the rod resultingin foreshortened projection. Rods are thin relative to the scene andspread of the viewpoint distributions, therefore we assume visibil-ity to be constant in the normal directions of the rod. Our discreteapproximation of the expected visibility is thus a double sum over n u points sampled according to the input probability density func-tion and n i j points sampled along the rod v i j ≈ √ a i j n u √ π n u ∑ u = cos − (cid:18) ( x i − e u ) · ( x j − e u ) (cid:107) x i − e u (cid:107)(cid:107) x j − e u (cid:107) (cid:19) n ij ∑ w = s ( e u , x w ) (cid:124) (cid:123)(cid:122) (cid:125) g ij , where we collect the terms that do not depend on a i j into a singlenon-negative scalar per-rod g i j ∈ R ≥ . In this way, the squared vis-ibility of each rod becomes a linear function of the cross-sectionalarea: a i j g i j . Because wires are so thin compared to rods , we hap-pily set g i j = wires and avoid their visibility precomputation.To generate the n i j samples on edge i j , we subdivide the edge untilall segments are less than a given scene-dependent length threshold(e.g., 0 . The space of physically feasible supporting structures is high-dimensional and a mixture of discrete variables (e.g., how manyrods? connecting between which objects?) and continuous vari-ables (e.g., where rods attach to each object? what are the rod thick-nesses?). Navigating this space to find a globally optimal solutionis difficult. In response, the ground structure method (e.g., [Dor64;Ped93; ZP15; Fre04] makes the problem tractable by rephrasing theproblem into selecting a discrete subset of support elements froman intentionally dense yet finite set of candidate elements. This can-didate set is referred to as the “ground structure.”In our case, we generate a ground structure of candidate rodand wire elements by Poisson disk sampling [Yuk15] all rigid ob-jects and the support surface and then connecting all possible pairsof points from different sources (e.g, for a single rigid object thisforms a bipartite graph with the supporting surface, see Figure 4).For each edge in this graph, we label it as a “rod” or “wire” (andpossibly create duplicate copies so edges appear as both types). Wecan discard a bad edge i j if its attachment angle is self-penetratingor too obtuse (by checking if ˆ t i j · ˆ n i < cos θ max ), if it intersects ob-jects in the scene (by ray casting), or if its computed visibility co-efficient is exceptionally high ( g i j > g max ). We refer to the result asthe pruned ground structure G . The beauty of the ground structure method is that once the candi-date set has been chosen, selecting the globally optimal subset canbe phrased as an efficient convex optimization, in particular a linearprogram. In the classic method, the cost function to be minimizedis the total volume of material spent on the support structure. Sinceall edge lengths are known once the candidate set is selected, thiscost is a linear function of the yet unknown edge cross-sectional ar-eas. It is important that this cost function is the unsquared volume,which can be thought of as the L1-norm of the vector of edge areas(weighted by edge-lengths), as opposed to the sum of squared per-edge volumes, analogous to the L2-norm. The L1-norm is sparsityinducing and under mild conditions will agree with the optimal so-lution of the selection problem, analogous to the L0-pseudonorm.As a result, the vast majority of edges in the solution will have ex-actly zero area.In our case, we augment the total volume cost function witha least-squares visibility term to penalize choosing highly visiblerods. Because our per-edge visibility measurement in Eq. 7 is lin-ear in the square-root of the rod areas, this least-squares energybecomes linear in the areas.The areas of the rods and wires are the primary unknowns. Weintroduce auxiliary variables c i j and b i j as described in Sec. 3.2to facilitate writing our force and torque balance constraints (seeSec. 3.1). These variables are then coupled to the areas via the yieldstress inequalities (see Eq. 5).The resulting optimization is a linear program over the prunedground structure G containing m candidate edges:min a , c , b ∑ i j ∈G a i j ( (cid:96) i j + λ g i j ) (7)s.t. ∑ i j | j ∈ V k c i j ˆ t i j + (cid:96) i j N i j b i j = m k g , ∀ k = , . . . , K (8) ∑ i j | j ∈ V k ( c i j ˆ t i j + (cid:96) i j N i j b i j ) × ( x j − x k ) = , ∀ k = , . . . , K − σ ci j a i j ≤ c i j ≤ σ ti j a i j , ∀ i j ∈ G (9) − σ bi j a i j (cid:96) i j ≤ b i j ≤ σ bi j a i j (cid:96) i j , ∀ i j ∈ G (10) a i j ≥ , ∀ i j ∈ G (11)where we stack all a i j , c i j , and b i j variables into vectors a ∈ R n , c ∈ R n , and b ∈ R n , respectively, and we introduce the user-controllable weighting term λ to balance between preference forvolume and visibility minimization.We opt to replace the second-order cone constraint for bendingyields in Eq. 5 with the simpler coordinate-wise linear inequalityin Eq. 10. This can be thought of as a conservative L ∞ approx-imation, and albeit coordinate system dependent, does not affectresults and admits a faster linear program than a conic program inour experience.The linear coefficients in the force/torque balance equations andlinear inequalities (Eqs. 8-10) can be collected in large sparse ma-trices (see App. 5). Many efficient solvers exist for such large sparselinear programs; we use M OSEK [AA00]. submitted to COMPUTER GRAPHICS
Forum (5/2020).
Kushner et al. / Levitating Rigid Objects with Hidden Support Structures
Scene K FULL m TIME
Parade Float 1 20000 10233 0.14“Koons” Display 1 154400 22020 4.90Bunny-Teapot-Rocker 3 151843 22953 6.44Bedroom 13 490943 46416 35.87Zoetrope (one frame) 1 469530 51767 33.77Pterosaurus 57 10305600 785605 608.01
Table 1:
Timings in seconds (
TIME ) for each result with K objects,
FULL and m edges in the original and pruned ground structures,respectively. The “Pterosaurus” and “Parade Float” examples donot include the time for computing visibility, as it was not used inthe LP objective.
A solution is a guaranteed to exist as long as force and torquebalance can be achieved. This could fail to happen for very sparseground structures (e.g., less than six edges per object) or degeneratesituations (e.g., all edges are parallel). Our very dense ground struc-ture (hundreds of thousands of edges) enjoys the general positionof its random providence. We never fail to find a feasible solution.
4. Experiments & Results
We implemented our algorithm in M
ATLAB using
GPTOOLBOX [Jac*18] for geometry processing and M
OSEK [AA00] to solve thelinear program formulated in Section 3.6. Pre-computation of theintegrated visibility, in our input scene is accelerated using the E M - BREE [WWB*14] ray-tracer as interfaced by
LIBIGL [JP*20]. Wereport statistics and timings for the results in our paper in Table 1.All times are reported on a MacBook Pro with 3.5 GHz Intel Corei7 and 16GB of RAM. Visibility pre-computation is computed inparallel, but is still typically the bottleneck ( ≈ m = O ( K ) , typically generated by taking all inter-object pairs over 10-100 Poisson disk sample points on each object.Starting with a dense ground structure leads to better qualitative re-sults, but the exact positions of the samples do not drastically effectthe hidden-ness of the result. Figure 9 shows how little the solutionchanges as a function of the ground structure sampling.Pruning often significantly reduces the ground structure size andconsequently, the number of degrees of freedom (see, e.g., Fig-ure 4). Perhaps unsurprisingly, we typically experience a speedupthe same ratio of original ground structure edges to pruned groundstructure edges. The number of constraints in our optimization issix times the number of objects K . After pruning, M OSEK finds asolution for the above problem configuration within a few minutes.In our accompanying video, we show animations of resultsin this paper including traversals of the viewing distributions todemonstrate the robustness of our methods ability to hide supports.Levitating 3D objects has a wide range of applications includ-ing scientific visualization, film and theater set design, home decor,anamorphic 3D art installations, as well as objects for zoetropes ...
Figure 9:
Our results depend on a randomly generated groundstructure. Changing the random seed affects the precise result, butnot qualitatively.
Single “perfect” wire Our optimized wires small new force
Figure 10:
Applying a small new force to the plane held by a singlewire causes undesired behaviour since a single wire attachmentis not enough to balance the torque. Our method gives a 6-wiresolution, exactly the number needed to balance force and torque. and 3D stop-motion animation. Each application has specific de-sign requirements, and our algorithm is designed to enable the ex-ploration of a number of aesthetic and structural parameters anddesign choices, which significantly impact the resulting solution.We elaborate on some of these design use cases.Both scientific exhibits (see, e.g., Figures 1,2) and illusory artinstallations require an unobscured view of the levitating objects.While it is feasible for designers to hand-craft support structuresfrom a single fixed viewpoint, the interplay between visibility andstructural stability is quite complex for mutli-view distributions. InFigure 1, we show the ability of our algorithm to adapt its optimalsolution to multiple viewpoint distributions.Our algorithm is able to holistically optimize the support struc-ture using a mix of rods and wires. We color our rods bright orangefor evaluation in this paper, but in practice they can be further cam-ouflaged by matching their appearance to the background or sceneobjects (see Figure 8). buoyancy force
The choice of using a rod orwire is both aesthetic (as de-termined by a user) and func-tional. For example, supportinga levitating object with a wirewould require a potential attach-ment points on the fixed surfaceor other levitating objects, to bevertically higher than the givenobject (see, e.g., Figure 7) . Theinset figure shows a parade floatsuspended by optimized wires(the net force pointing upward due to buoyancy). Previous meth-ods have considered hanging objects [PWLS13] or more generallymobiles [MML16] by placing a single support “perfectly” placed submitted to COMPUTER GRAPHICS
Forum (5/2020). ushner et al. / Levitating Rigid Objects with Hidden Support Structures Rods only, no visibility term Rods only with visibility term Rods and wires with visibility term
Figure 11:
Applying the ground structure method to this example of a giant balloon hanging outside of a museum gives sufficient rods tosupport it, but they are visible. Using our visibility term in the optimization yields a support structure with rods hidden to the viewpoints.Allowing wires for tension and rods for compression, the result is a few thick but invisible rods and thin wires which hold the balloon in place.
3D zoetrope circa 1887 Our hidden-support 3D zoetrope
Figure 12:
3D zoetropes are an old idea, but hiding supports forflying objects is still challenging. We incorporate the centripetalforce due to spinning and hide supports behind a backflipping boyzoetrope. See accompanying video at 2m39s. in alignment above the center of mass. While this strategy requiresthe fewest supports, it is an unstable solution (see Figure 10). Ourmethod relies on random sampling of points in general position,typically producing multiple wires per hanging object, but result-ing in a more stable configuration.Mounting objects off the side of a support such as a wall is bestachieved with a mixture of wires and rods. Figure 11 shows a gi-ant promotional display suspended in front of a contemporary artmuseum. We provide a symmetric dense ground structure and ouroptimization naturally finds a symmetric sparse solution.The pterosaurus in Figure 8 has 57 separate bones and requires acomplex support structure, acting as a stress test on our optimiza-tion. In practice, skeleton displays often pre-plaster-fuse bones toreduce the number of pieces (see spine of whale in Figure 2).The idea of stop-motion animation and 3D zoetropes is overa century old [Mar90], with modern examples including “FeralFount” by Gregory Barsamian at the Museum of the Moving Imagein Queens and the
Toy Story zoetrope featured in Pixar’s MuseumExhibit. The protrayal of levitating objects in this medium is partic-ularly challenging. We demonstrate a prototypical result of a back-flipping boy in Figure 12 by hiding supporting rods out of sight.For this example to be structurally stable both at rest and whilespinning, we first find the optimal set of rods for each frame undergravity and then re-run the linear program on just these rods subjectto centripetal forces. The final rod thickness are the maximum overthe two solves. Incorporating more elaborate multi-load handling(cf. [Fre04]) is left as future work.
5. Limitations & Future Work
Our rod model includes linearised tension, compression, and bend-ing forces. Like many past methods, we do not handle the self-weight of the rods by assuming that the force of gravity is muchlarger than the force of the rods on themselves. This is a trivialaddition of gravity forces on each rod proportional to their length.Ground structure methods may produce solutions where thickenedrods intersect each other; ours is no exception. Previous methodshave considered penalty terms or post-pressing to deal with inter-secting (e.g., [JTSW17]). Wire-wire intersections are extremely un-likely due to the very thin nature of wires. Our visibility model con-siders direct line of sight, but not other cues such as reflections orshadows. Transparency of objects is not accounted for. Dependingon the setup of the scene, there may not be a solution invisible toevery viewpoint (e.g., Figure 13). Since we model physical valid-ity as a hard constraint, we are still able to find a solution, albeit avisible one.The precise solution depends on the initial ground structure. Ingeneral, denser ground structures produce higher quality solutions— both in terms of total structure volume and hidden-ness — withdiminishing returns. Rod areas are directly proportional to stresslimits, so acurate fabrication relies on accurate (or at least conser-vative) material measurement. In fact, fabrication of our digital re-sults would also be an exciting next step.Fabrication may be within reach utilizing recent wire-framemethods [KSW*17; CZS*19; Jac19] or via 3D printing. A voxel-based topology optimization formulation of our problem may bebetter suited for 3D printing or milling pipelines. It may be possibleto forgo fabricating a literal support structure entirely by exploringmagnetic levitation.Our algorithm assumes that the input is a well-crafted scene tobegin with and leaves it perfectly as inputted. The creative designprocess for these scenes is itself non-trivial In the future, we areinterested in pursuing an interactive design tool which would pro-vide hints to increase occlusion by applying simple transformations(translations, rotations and scales) to the objects in the scene oreven provide automatic layout optimizations given the objects andthe viewpoints.We model the problem of hidden supports as an efficient linearprogram that leverages fast ray-casting from computer graphics. submitted to COMPUTER GRAPHICS
Forum (5/2020).
Kushner et al. / Levitating Rigid Objects with Hidden Support Structures
Scene setup Expected view very wide viewpoint distributionvery small object
Outer 20% of points
Figure 13:
In the case of a very wide viewpoint distribution and asmall or thin object, there will most likely be viewpoints from whichthe supports are visible. The rightmost figure shows the scene froma viewpoint on the outer 20% of the distribution.
We see an exciting future in combining techniques from render-ing and geometry processing with structural optimization in archi-tecture and engineering. We hope this combination of appearance-driven design will be beneficial to scientific and artistic endeavours.
References [AA00] A
NDERSEN , E. D. and A
NDERSEN , K. D. “The
MOSEK interiorpoint optimizer for linear programming: an implementation of the homo-geneous algorithm”.
High Performance Optimization . 2000 5, 6, 9.[BWBS14] B
ÄCHER , M
ORITZ , W
HITING , E
MILY , B
ICKEL , B
ERND , andS
ORKINE -H ORNUNG , O
LGA . “Spin-it: optimizing moment of inertia forspinnable objects”.
ACM Trans. Graph.
ONNELLY , R
OBERT and W
HITELEY , W
ALTER . “Second-OrderRigidity and Prestress Stability for Tensegrity Frameworks”.
SIAM J.Discrete Math.
HIDAMBARAM , S
UBRAMANIAN , Z
HANG , Y
UNBO , S UN - DARARAJAN , V
ENKATRAGHAVAN , et al. “Shape Structuralizer: Design,Fabrication, and User-driven Iterative Refinement of 3D Mesh Models”.
Proc. CHI . 2019, 663 2, 7.[CZT16] C
OROS , S
TELIAN , Z
EHNDER , J
ONAS , and T
HOMASZEWSKI ,B ERNHARD . “Designing structurally-sound ornamental curve net-works”.
ACM Trans. Graph.
ORAISWAMY , H
ARISH , F
ERREIRA , N
IVAN , L
AGE , M AR - COS , et al. “Topology-based catalogue exploration framework for iden-tifying view-enhanced tower designs”.
ACM Trans. Graph.
ORN , W. “Automatic design of optimal structures”.
J. deMecanique
EUSS , M
ARIO , P
ANOZZO , D
ANIELE , W
HITING , E
MILY , etal. “Assembling self-supporting structures”.
ACM Trans. Graph.
REUND , R
OBERT
M. “Truss Design and Convex Optimization”.PhD thesis. M.I.T., 2004 2–5, 7.[HHC18] H
SIAO , K AI -W EN , H UANG , J IA -B IN , and C HU , H UNG -K UO .“Multi-view Wire Art”. ACM Trans. Graph.
UANG , Y
IJIANG , Z
HANG , J
UYONG , H U , X IN , et al. “Frame-Fab: robotic fabrication of frame shapes”. ACM Trans. Graph.
ACOBSON , A
LEC et al. gptoolbox: Geometry Processing Tool-box . http://github.com/alecjacobson/gptoolbox. 2018 6.[Jac19] J
ACOBSON , A
LEC . “RodSteward: A Design-to-Assembly Systemfor Fabrication using 3D-Printed Joints and Precision-Cut Rods”.
Com-put. Graph. Forum
ACOBSON , A
LEC , P
ANOZZO , D
ANIELE , et al. libigl: A simpleC++ geometry processing library . http://libigl.github.io/libigl/. 2020 6. [JTSW17] J
IANG , C
AIGUI , T
ANG , C
HENGCHENG , S
EIDEL , H
ANS -P ETER , and W
ONKA , P
ETER . “Design and volume optimization of spacestructures”.
ACM Trans. Graph.
OVACS , R
OBERT , S
EUFERT , A
NNA , W
ALL , L
UDWIG , et al.“TrussFab: Fabricating Sturdy Large-Scale Structures on Desktop 3DPrinters”.
Proc. CHI . 2017, 2606–2616 2, 7.[LGC*18] L IU , J IKAI , G
AYNOR , A
NDREW
T., C
HEN , S
HIKUI , et al.“Current and Future Trends in Topology Optimization for Additive Man-ufacturing”.
Struct. Multidiscip. Optim.
AREY , E.J.
Physiologie du mouvement: vol des oiseaux .1890 7.[MKS*17] M
EGARO , V
ITTORIO , K
NOOP , E
SPEN , S
PIELBERG , A N - DREW , et al. “Designing cable-driven actuation networks for kinematicchains and trees”.
Proc. SCA . 2017, 15:1–15:10 3.[MML16] M
AKATURA , L
IANE , M
OST , C
ATHERINE , and L I , G LORIA . Balancing Act: An Interactive Tool for Fabricating Calder-Style Hang-ing Mobiles . Tech. rep. 2016 2, 6.[MP09] M
ITRA , N
ILOY
J. and P
AULY , M
ARK . “Shadow Art”.
ACMTrans. Graph.
EDERSEN , P
AULI . “Topology optimization of three-dimensionaltrusses”.
Topology design of structures . Springer, 1993, 19–30 5.[PTC*15] P
ÉREZ , J
ESÚS , T
HOMASZEWSKI , B
ERNHARD , C
OROS ,S TELIAN , et al. “Design and fabrication of flexible rod meshes”.
ACMTrans. Graph.
IETRONI , N
ICO , T
ARINI , M
ARCO , V
AXMAN , A
MIR , et al.“Position-based tensegrity design”.
ACM Trans. Graph. (2017) 3.[PWLS13] P
RÉVOST , R
OMAIN , W
HITING , E
MILY , L
EFEBVRE , S YL - VAIN , and S
ORKINE -H ORNUNG , O
LGA . “Make it stand: balancingshapes for 3D fabrication”.
ACM Trans. Graph. (2013) 2, 6.[SPS14] S
CHÜLLER , C
HRISTIAN , P
ANOZZO , D
ANIELE , and S
ORKINE -H ORNUNG , O
LGA . “Appearance-mimicking Surfaces”.
ACM Trans.Graph.
CHWARTZBURG , Y
ULIY , T
ESTUZ , R
OMAIN , T
AGLIASAC - CHI , A
NDREA , and P
AULY , M
ARK . “High-contrast ComputationalCaustic Design”.
ACM Trans. Graph. (2014) 3.[SVB*12] S
TAVA , O
NDREJ , V
ANEK , J
URAJ , B
ENES , B
EDRICH , et al.“Stress relief: improving structural strength of 3D printable objects”.
ACM Trans. Graph.
OUGA , E
TIENNE , H
ÖBINGER , M
ATHIAS , W
ALLNER , J O - HANNES , and P
OTTMANN , H
ELMUT . “Design of self-supporting sur-faces”.
ACM Trans. Graph. U , J UN , D ICK , C
HRISTIAN , and W
ESTERMANN , R
ÜDIGER .“A System for High-Resolution Topology Optimization”.
IEEE Trans.Vis. Comput. Graph.
ALD , I
NGO , W
OOP , S
VEN , B
ENTHIN , C
ARSTEN , et al.“Embree: a kernel framework for efficient CPU ray tracing”.
ACM Trans.Graph.
ANG , W
EIMING , W
ANG , T
UANFENG
Y., Y
ANG ,Z HOUWANG , et al. “Cost-effective printing of 3D objects with skin-frame structures”.
ACM Trans. Graph.
UKSEL , C EM . “Sample Elimination for Generating PoissonDisk Sample Sets”. Proc. Eurographics (2015) 5.[ZHMB20] Z
EGARD , T
OMÁS , H
ARTZ , C
HRISTIAN , M
AZUREK , A
REK ,and B
AKER , W
ILLIAM
F. “Advancing building engineering throughstructural and topology optimization”.
Structural and MultidisciplinaryOptimization (2020) 2.[ZLP*15] Z
HANG , X
IAOTING , L E , X INYI , P
ANOTOPOULOU , A
THINA , etal. “Perceptual models of preference in 3D printing direction”.
ACMTrans. Graph.
EGARD , T
OMÁS and P
AULINO , G
LAUCIO
H. “GRAND3:Ground structure based topology optimization for arbitrary 3D do-mains using MATLAB”.
Structural and Multidisciplinary Optimization (2015) 2–5. submitted to COMPUTER GRAPHICS
Forum (5/2020). ushner et al. / Levitating Rigid Objects with Hidden Support Structures
HOU , Q
INGNAN , P
ANETTA , J
ULIAN , and Z
ORIN , D
ENIS .“Worst-case structural analysis”.
ACM Trans. Graph. (2013) 2.
Appendix: Matrix Form
Solvers like M