Real-world objects are fairly complicated.
Often, their virtual representations
are greatly simplified.
When we compare this table model from Google Warehouse
to its real-world counterpart, we immediately
notice that many details are missing.
These details are what make designing
fabricable objects very difficult for casual users.
In this work, we present a modeling tool
that leverages information from a collection
of fabricable designs, in order to enable casual users to model
and build real-world objects.
To allow structure-preserving manipulations,
we automatically convert the designs
in our collection to hierarchical
Our template model takes into account global relationships,
such as symmetries and articulation consistencies.
It is also not restricted to fixed topologies, allowing
irregular patterns to be rescaled.
Notice how the number and position of connectors
changes, as the template parameters vary.
Our modeling tool is based on template manipulation
We allow users to explore the space
of template variations using different levels
of the template hierarchy.
During manipulation, active elements of the hierarchy
are shown in full color, while other elements
Once a part is positioned, the user
invokes a method that brings in connecting elements
to the design, by exploring the template database.
Notice how for our a wooden tabletop,
corner brackets are automatically brought in
to connect the top to the legs.
While, for a glass stop, a whole support structure for the glass
is automatically added.
We incorporate in our system a stability analysis evaluation
that warns the user if the design model is unstable.
We illustrate a full modeling session.
For composition, we first assist the users
by snapping drag components onto the working model.
The user can continue to reposition and rescale
the model, until she is satisfied
with the snap configuration.
The output of our system is a comprehensive bill
of materials that can be directly used for fabrication.
Here are some additional results.
One of the main advantages of using a data-driven approach
is its generality.
Notice how the same method that creates tables and cabinets
can also be used on go-karts.