Making burr puzzles from 3D models

Shiqing Xin, Chi-Fu Lai, Chi-Wing Fu, Tien-Tsin Wong, Ying He and Daniel Cohen-Or

SIGGRAPH 2011, technical paper
ACM Transactions on Graphics (ACM TOG), Article No. 97, Vol. 30, No. 4, 2011.


A 3D burr puzzle is a 3D model that consists of interlocking pieces with a single-key property. That is, when the puzzle is assembled, all the pieces are notched except one single key component which remains mobile. The intriguing property of the assembled burr puzzle is that it is stable, perfectly interlocked, without glue or screws, etc. Moreover, a burr puzzle consisting of a small number of pieces is still rather difficult to solve since the assembly must follow certain orders while the combinatorial complexity of the puzzle’s piece arrangements is extremely high.
In this paper, we generalize the 6-piece orthogonal burr puzzle (a knot) to design and model burr puzzles from 3D models. Given a 3D input model, we first interactively embed a network of knots into the 3D shape. Our method automatically optimizes and arranges the orientation of each knot, and modifies pieces of adjacent knots with an appropriate connection type. Then, following the geometry of the embedded pieces, the entire 3D model is partitioned by splitting the solid while respecting the assembly motion of embedded pieces. The main technical challenge is to enforce the single-key property and ensure the assembly/disassembly remains feasible, as the puzzle pieces in a network of knots are highly interlocked. Lastly, we also present an automated approach to generate the visualizations of the puzzle assembly process.

Results #1: Our Burr Puzzles from different 3D models


Results #2: Visualizing the disassembly/assembly of our Burr Puzzles


Results #3: Rapid-Prototyping some of them


Presentation video (with audio narration)


Click the following link to download:


    author = {Shiqing Xin and Chi-Fu Lai and Chi-Wing Fu and Tien-Tsin Wong and Ying He and Daniel Cohen-Or},
    title = {Making burr puzzles from {3D} models},
    journal = {ACM Transactions on Graphics (SIGGRAPH 2011 issue)},
    month = {August},
    year = {2011},
    volume = {30},
    number = {4},
    pages = {97:1-97:8},