Modifying laser cut 3d models is easy. As long as the format is
3d. I want to modify these VR goggles so as to accommodate my
farsightedness. Unfortunately, 95% of laser cut models shared
online are in the form of 2d cutting plans. To edit this in
2d, I just have to make the top plate longer. But that requires
me to also modify this side connected to that plate, the
opposite side and the plate at the bottom of the headset
accordingly. The way I figured this out was by temporarily
thinking of the model in 3d, I mentally assembled the 2d parts
into a 3d model mentally performed the scaling operation
realize the four casing walls should be affected, but not the
nosepiece which happened to be located in front of the screen
and then located and modified these in a 2d cutting plan. In
our study participants to 24 minutes to perform this task
rated it as hard and only two participants arrived at a
cutting plan that could actually be assembled into a functional
model. This is what we are addressing with assembler cue by
making this 3d reconstruction step explicit and implementing
it in software. More specifically, assembler^3 allow
users to 3d reconstruct their model, which then allows users
to use available tools like kyub to modify their model and
ultimately converted back to the 2d representation the laser
cutter needs. In our study, this software support allowed
participants to perform the shown modification 10 times
faster, rated it as easy and always produced functional
models.
assembler^3 achieves this using a five step algorithm. Step one.
assembler^3 detects What are plates in the model by
determining the nesting order of the parts in a file. a dentist
signs blade versus cutout in alternating order. Step two.
assembler^3 detects joints based on patterns of left and right
turns into paths. It estimates the probability of A given piece
of contour being a joint based on how closely it maps to a
perfect version of that joint, which straight angles and
parallel lines. Step three. assembler^3 now determines what
material thickness the model must have been designed for. It
achieves this by identifying those portions of joints that a
e supposed to cut through a pla e and have these vote fo
material thickness based o their length and currentl
estimated probability. Here t read line segments when thi
vote, suggesting that th material is of this thickness
assembler^3 now revisit segment that had voted for a differen
material thickness. Now knowin the actual material thickness
the assumption that these b joints is not justified anymore
assembler^3 therefore drop these from its list of joints
Step four, assembler^3 will hav to compare each joint to eac
other joint. To perform thi quadratic number of comparison
quickly, it condenses th specific shape of each join
into an easy to compare hash. T make the hash robust agains
variations in kerf, assembler^ does not hash the widths o
individual fingers, but a pai of a finger and an adjacen
cavity. This hash now allow assembler^3 to identify al
matching joins in linear time and with a very small prefactor
This is essential for allowin interactive rates in th
following step. Step five assembler^3 now lets user
assemble the mode interactively
By clicking a plate assembler^3 simplifies the user's visual
search by highlighting all potentially matching joints and
the user continues to assemble the model. If assembler^3 should
ever insert a plate incorrectly, this floating menu element
allows me to reorient the last plate. But given that displayed
was correct in the first place, let me just undo that change and
continue to assemble the model.
The assembler^3 algorithm is now complete, we have a 3d
reconstructed model. And now my preparation is paying off as it
allows me to manipulate my model using standard 3d manipulation
tools, such as to adjust my VR headset to accommodate for my
farsightedness as demonstrated at the beginning of this video.
We have tested assembler^3 by importing and reconstructing 100
models from online repositories Thingiverse and grabcad.
assembler^3 helps you as is to make parametric transformations
to 3d laser cut models, even though they're typically shared
in the form of 2d cutting plans. The key step is the 3d
reconstruction. The remaining steps are handled by existing
software systems here kyub. When this process has been completed
once users most likely store it in 3d format, allowing them from
now on to perform any possible manipulations such as stretching
the headset vertically to fit a wider phone, or making the
headset more comfortable to wear by switching to thinner and thus
lighter wood, and by adding cutouts. For the same reasons,
users will want to hold on to their models in 3d format. Users
will want to share their models in 3d format, as this allows
others to keep personalizing to keep re mixing and to keep
advancing the complexity of the model. And this is where we see
the true objective of assembler^3 to help the field
leave the outdated SVG sharing from it behind and to transition
to a 3d format