PuzzleCut OpenSCAD Library

by nothinglabs, published

PuzzleCut OpenSCAD Library by nothinglabs Nov 26, 2012

Thing Info

19540Views 3100Downloads
Report Thing


Simple OpenSCAD library that cuts objects into interlocking pieces.


This OpenSCAD library lets you easily cut objects into interlocking pieces for 3d printing or laser cutting.

Useful for printing objects larger than your printer can handle - or breaking a big job into smaller pieces - so failing doesn't suck as bad.

Place puzzle cuts anywhere you like along the X and/or Y axis.

If you want to change the location of the main cut lines - translate / rotate your object beforehand.

The size of the puzzle cuts can easily be adjusted. You can also adjust "kerf" for a tighter or looser fit.

See included puzzlecutdemo2 file for example of how to import an existing .STL.

Get OpenSCAD here: http://www.openscad.org

Demo object: "Bucket O' Octopodes (thicker legs)" - http://www.thingiverse.com/thing:8896

Tutorial video by andrewupandabout: http://youtu.be/RbTqeFuRrLQ

TIP: A kerf of -0.3 is a good starting point if your looking for snug fitting 3d printed parts (thanks toof!).

NOTE: Complex objects may result in "normalized tree" errors / rendering problems. These can be worked around by doing a full render (just hit F6).


PuzzleCut now supports multiple cut lines per axis! See multicutdemo.scad for an example. This update also changes the cut location variable names (see demo files).

Updated puzzlecutdemo2.scad with some larger cuts and reasonable default kerf. Should now make a good test print without any changes.

Thing Info

19540Views 3100Downloads
Report Thing

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag. Print Thing Tag
Jul 13, 2015 - Modified Jul 13, 2015

Very nice script. I have figured out how to use this but whenever I cut my object it becomes hollow along the cuts.
I used it to cut this object (imported from STL to OpenSCAD):

I can fix the holes in Blender(I think) but I really don't understand why it generates the holes. I am on OpenSCAD 2015.03.
You can see here more details:


VESA Case für Raspberry Pi B+, 2 and Odroid C1 with VESA mount 75/100

Hi, How do I change the angle at which it cuts the model?

try rotating your model!


Thanks Rich, i have another question, what do I have to do if I render the object and the object isn't cut, I tried rotating the object but it just cuts off the edge of the object.

I would try translating your model. Googling openscad will give you more info.

It was a while ago when I wrote the code - I would just try tweaking stamp size to see what happens.

And whats a stamp size?

Once again, Rich to the rescue!
Took me a couple of minutes to figure out how to use it, but this lib is just fantastic.

Hey this is a fantastic implementation of this idea.

I had a q: do you know if it's possible to have OpenSCAD determine your model's size and then use that to sort of determine where to make the X and Y positions for the cuts?

great work, and thanks for sharing!

glad you like the project!

Based on what I know about OpenSCAD - I think doing that kind of analysis is unlikely to be practical. (but don't let me stop you from trying...)


The example files worked fine, but when I try to do it on a more detailed model, it ends up looking strange. Half of a section will turn out looking ok, but parts of the section that's supposed to be gone will show up. The model I'm working with is:
I resized it and rotated it to have the same orientation as the octopus, any idea what I'm doing wrong? Thanks!

Skyrim - Dragon Priest Mask

sometimes I'll hit problems with puzzlecut where openscad kind of freaks out due to the amount of model data.
issues seems to be that puzzlecut creates a new copy of the model for each cut - so openscad might be able to handle 1x of the model - but not 6x. nice work on pincut!

Is there a specific openscad version required for the puzzlecut scripts? I don't know why my cut gear crashes when exporting to STL but it can process F5 and F6 correctly.. Where may I have gone wrong? Thanks -Sorry in advance if ever this is a noob question.. Thanks!! :)

just checked with the latest openscad - all works fine. I would start by trying one of the sample scripts.

One thing - puzzlecut effectively re-renders the entire object each time for each cut. So - it's possible OpenScad is having trouble dealing with that much data... if you can simplify your STL that might help.

have fun!


This works great the only problem I am having is that it does not generate enough notches to hold the pieces together. For some of my stl's it is only making one. Is there any way to correct this?

You should be able to add as many cuts as needed by modifying the xcutlocation / ycutlocation arrays.

If you're not seeing the cuts - they are likely outside your STL - I'd keep playing with the values to see if you can get them to appear.

You also may need to use the translate command to reposition your model. If things aren't working - you might want to start by playing with the example a bit.

Hope this helps!


ok so i am new how do i center my stl file to cut it equal?

This is genius! Excellent for simply cutting up large models into printable chunks. Thanks.

A kerf value of -0.3 is an excellent place to start for 3d printed objects It makes a stiff joint that could be glued for a permanent join.

Would you be willing to share the octopus puzzle model?
I have a CNC machine and want to try to mill it up from solid mango or Ipe :D I've never heard of openscad before and am not sure how to use it correctly....

Try http://www.thingiverse.com/thing:8896http://www.thingiverse.com/thi...  (turns out I had wrong link in description)

Bucket O' Octopodes (thicker legs)