Ever since I ran across Interlocking Hexagonal Toy Bricks published by David Barber in 2012, I thought the idea was great and the level of detail in his writeup exceptional. I'm surprised I didn't find an implementation here on thingiverse; if you know of one please link it in the comments!
This is my realization of the concept, theoretically customizable through the customizer but probably you will want to edit the openscad yourself depending on the piece designs you want (if you want different shapes of pieces, editing the openscad file is the way to do it)
The blocks assemble and have a very snug fit but I worry they will have a limited number of assembly-disassembly cycles before the studs fail. No matter; just print more!
The following shapes are implemented, and the included stl is plated with one each of:
- the 1-brick
- the 2-punctual brick
- the three different 3-punctual bricks
- the 2-lateral brick
I don't yet have the hang of my numbering system for stud locations, which makes it tedious to enter new bricks; and the way I accommodate both punctual and lateral block designs makes the API confusing. I should look into how to number hex grids and see whether I can't find something that makes more sense (to me).
Besides that, I should define a larger number of bricks, as well as other features proposed by Barber such bricks that are missing studs and bricks that have all or part of their outer
The thinnest features are the inner walls, controlled by
inner_width. Check your slicer's preview from the bottom and make sure that the hexagonal grid is complete and not broken or missing segments.
ceiling_thickness should match your slicer's setting for "top thickness", e.g., if you have 2 top layers at .200mm, then a good value for
Depending on how under- or over-sized your printer prints things, the next parameters to tweak are
outer_wall_inset (if the fit between pieces in a layer is too tight, increase the inset; if the gaps are too big, decrease it) and the
stud_inset (if the studs are too big to mate, increase the inset; if they're too small, decrease it)
The slicer's infill setting doesn't matter much, the print is mostly outlines and top layers.
Turn off your printer's support generation. The bridges are very small and can droop substantially without affecting the functionality of the bricks (e.g., a 1mm droop on a 2mm bridge is A-OK); just add another top layer if you're not satisfied with the finish due to drooping bridges. On the other hand, it would be futile to try to remove any supports your slicer generated.