Complex Assemblies


3D assemblies refer to objects that combine multiple component parts into a structure with a specific form and/or functionality. Due to the ability to make complex and/or large objects from simple and small parts, 3D assemblies are widely used, e.g., in toys, mechanisms, furniture, and architecture. Designing complex assemblies is a challenging problem since we need to consider not only the geometry of parts and their local joining but also the functional and aesthetic performance of the whole assembly.

The goal of this project is to develop computational methods and tools to assist the design of complex assemblies. To achieve this goal, we investigate novel high-level assembly representations, discrete/continuous optimization algorithms, and suitable design exploration methods. Specifically, we study the following aspects of complex assemblies:

Joining techniques are usually required to prevent parts from moving relative to one another and make the assembly steady for practical usage. However, conventional joining techniques can be irreversible (e.g., glue), impair the structural integrity of parts (e.g., nails), or degrade the external appearance of the assembly (e.g., clamps). Thus, we explore new joining techniques (i.e., integral joints) that allow parts to be tightly connected and simplify the assembly process.

Interlocking is an intriguing condition in 3D assemblies, where all component parts except for a single key part are immobilized by their geometric arrangement, thus enhancing the structural stability. This technique has been practiced in long-standing wooden architecture as well as in challenging games like the burr puzzle. In this topic, we investigate computational methods to construct assemblies with interlocking, taking the above joining techniques as a foundation to restrict the relative movements of connected parts.

Tolerance specifies the designed-in clearance among neighboring parts to accommodate manufacturing errors. The empty space between parts introduced by tolerance allows the parts to experience limited movements. Consequently, the aggregated movement can result in large part displacements, making the structure potentially unstable. In this topic, we focus on designing assemblies robust against small part displacements caused by tolerance.

Construction is the physical process of assembling individual parts into the final assembly. The effort needed to construct a 3D assembly increases dramatically as the design is scaled; e.g., buildings are much harder to construct than toys. To facilitate effective construction, we prefer 3D assemblies that are steady by themselves or require only minimal additional support at each intermediate assembly stage.




Design and Structural Optimization of Topological Interlocking Assemblies

Ziqi Wang, Peng Song, Florin Isvoranu Mark Pauly

ACM Transactions on Graphics (Proceedings of SIGGRAPH Asia), 2019

Paper Webpage

DESIA: A General Framework for Designing Interlocking Assemblies

Ziqi Wang, Peng Song, Mark Pauly

ACM Transactions on Graphics (Proceedings of SIGGRAPH Asia), 2018

Paper Webpage

CofiFab: Coarse-to-Fine Fabrication of Large 3D Objects

Peng Song, Bailin Deng, Ziqi Wang, Zhichao Dong, Wei Li, Chi-Wing Fu, Ligang Liu
ACM Transactions on Graphics (Proc. of SIGGRAPH), 2016

Paper Webpage

Assembling Self-Supporting Structures

Mario Deuss, Daniele Panozzo, Emily Whiting, Yang Liu, Philippe Block, Olga Sorkine-Hornung, Mark Pauly

SIGGRAPH Asia 2014

Paper Webpage

Fabrication-aware Design with Intersecting Planar Pieces

Yuliy Schwartzburg, Mark Pauly

Computer Graphics Forum (Proc. Eurographics) 2013

Paper Webpage

Automatic Generation of Constructable Brick Sculptures

Romain Testuz, Yuliy Schwartzburg, Mark Pauly
Eurographics 2013 Short Paper

Paper Webpage