Mastodon

lasercut fingerjoint enclosures; pictures & code

l

My last laser-cut finger-joint project (and the electronics inside) was meant to be a time machine, an emergency device, a way to bend reality. Also, it was octagonal. These aims proved to be unrealistic. I did pull off the octagonal bit, but even that was a struggle.

Less fraught projects need enclosures, too, though, and I liked the technique. You can do some super-cool stuff with lasercut materials. Like 3D printing, it removes craftsmanship as an excuse for failing to instantiate the things you imagine.

But although laser-cut construction allows for much stronger and prettier materials than 3D printing, the process of translating from two dimensions to three is trickier than you might think. There are various considerations, from the variance of the width of the source material to the width of the path burned away by the laser (“kerf”). Accounting for these things in vector graphics editing programs can be quite tedious. It’s easy to make mistakes.

The right way to do this would probably be to write a plugin for Inkscape/Illustrator. But I’m more comfortable writing Python, so that’s what I did. I wrote up a support class that facilitates the creation of finger-joints, and which handles things like kerf automatically.

The output isn’t designed to be ready-to-print. You should plan to import it to a vector editor and do subsequent work. Here, for example, is the output of a simple script I used for my latest project:

fingerjoint.py output

And here’s the EPS I constructed from it and submitted to Ponoko:

fingerjoint.py output edited

Note the difference in the corners of the larger piece, in particular. Some editing is necessary. But the results are quite nice!

Lasercut box=great success. Design/code to follow.

(ignore those laser scorch marks; I haven’t pulled the adhesive paper side off yet, but when I do and flip the sides, the outside should be relatively pristine)

I’ve published the code, and would love to see it expanded into a more general-purpose toolkit. Apologies for its hackiness/non-pythonicness. I assure you it’s much better than the first two drafts. This version does matrix math and everything!

About the author

Tom Lee

1 comment

By Tom Lee