version 1.2 - 4 Dec 2023
Original box maker by Elliot White (formerly of twot.eu, domain name now squatted)
Heavily modified by Paul Hutchison
This tool is designed to simplify the process of making practical boxes from sheet material using almost any kind of CNC cutter (laser, plasma, water jet or mill). The box edges are "finger-jointed" or "tab-jointed", and may include press-fit dimples, internal dividers, dogbone corners (for endmill cutting), and more.
The tool works by generating each side of the box with the tab and edge sizes corrected to account for the kerf (width of cut). Each box side is composed of a group of individual lines that make up each edge of the face, as well as any other cutouts for dividers. It is recommended that you join adjacent lines in your CNC software to cut efficiently.
An additional extension which uses the same TabbedBoxMaker generator script is also included: Schroff Box Maker. The Schroff addition was created by John Slee. If you create further derivative box generators, feel free to send me a pull request!
This is a major upgrade to support Inkscape v1.0 and CNC mills (with dogbone cuts), plus an updated dialog layout and documentation, and a number of smaller fixes. So far no serious bugs (i.e causing runtime errors) have been found. The program works with Python 3 ONLY. See issues for known issues, or to log issues and enhancement requests.
Note that in this release the extension has moved from the Laser Tools to the CNC Tools submenu. This is to better reflect that this tool can be used on a wide variety of CNC machinery, especially with the addition of dogbone corners: laser, water jet, milling, even 3D printing.
Any donations will be gratefully received:
Many thanks to those who have donated.
The interface is pretty self explanatory, the extension is 'Tabbed Box Maker' in the 'CNC Tools' group
Parameters in order of appearance:
Units - unit of measurement used for drawing
Box Dimensions: Inside/Outside - whether the box dimensions are internal or external measurements
Length / Width / Height - the box dimensions
Tab Width: Fixed/Proportional - for fixed the tab width is the value given in the Tab Width, for proportional the side of a piece is divided equally into tabs and 'spaces' with the tabs size greater or equal to the Tab Width setting
Minimum/Preferred Tab Width - the size of the tabs used to hold the pieces together
Symmetry - there are two styles of tabs avaiable:
Tab Dimple Height - the height of the dimple to add to the side of each tab, 0 for no dimple. Dimples can be added to give tabbed joints a little extra material for a tighter press fit.
Tab Dimple Length - the length of the tip of the dimple; dimples are trapezoid shaped with 45-degree sides; using a dimple tip length of 0 gives a triangular dimple
Line Thickness - Leave this as Default unless you need hairline thickness (Use for Epilog lasers)
Material Thickness - as it says
Kerf - this is the diameter/width of the cut. Typical laser cutters will be between 0.1 - 0.25mm, for CNC mills, this will be your end mill diameter. A larger kerf will assume more material is removed, hence joints will be tighter. Smaller or zero kerf will result in looser joints.
Layout - controls how the pieces are laid out in the drawing
Box Type - this allows you to choose how many jointed sides you want. Options are:
Dividers (Length axis) - use this to create additional LxH panels that mount inside the box along the length axis and have finger joints into the side panels and slots for Width dividers to slot into
Dividers (Width axis) - use this to create additional WxH panels that mount inside the box along the width axis and have finger joints into the side panels and slots for Length dividers to slot into
Key the dividers into - this allows you to choose if/how the dividers are keyed into the sides of the box. Options are:
Space Between Parts - how far apart the pieces are in the drawing produced
Live Preview - you may need to turn this off when changing tab style, box type, or layout
Much the same as for regular enclosures, except some options are removed, and some others are added. If you're using Elby rails, all you'll need to do is specify:
Depth
Number of 3U rows
Row width in TE/HP units (divide rail length by 5.08mm/0.2")
If multiple rows, inter-row spacing
Default installation directories are given below:
%APPDATA%\inkscape\extensions
C:\Program Files\Inkscape\share\extensions
~/Library/Application Support/org.inkscape.Inkscape/config/inkscape/extensions
/Applications/Inkscape.app/Contents/Resources/share/inkscape/extensions
~/.config/inkscape/extensions
version | Date | Notes |
---|---|---|
0.5 | ( 9 Oct 2011) | beta |
0.7 | (24 Oct 2011) | first release |
0.8 | (26 Oct 2011) | basic input checking implemented |
0.86 | (19 Dec 2014) | updates to allow different box types and internal dividers |
0.86a | (23 June 2015) | Updated for compatibility with Inkscape 0.91 |
0.87 | (28 July 2015) | Schroff enclosure add-on |
0.93 | (21 Sept 2015) | Updated versioning to match original author's updated v0.91 plus adding my 0.02 |
0.93a | (21 Sept 2015) | Added hairline line thickness option for Epilog lasers |
0.94 | (4 Jan 2017) | Divider keying options |
0.95 | (20 Apr 2017) | Added optional dimples on tabs |
0.96 | (24 Apr 2017) | Orthogonalized box type, layout, tab style; added rotate-symmetric tabs |
0.99 | (4 June 2020) | Upgraded to support Inkscape v1.0, minor fixes and a tidy up of the parameters dialog layout |
1.0 | (17 June 2020) | v1.0 final released: fixes and dogbone added - Mills now supported! |
1.1 | (9 Aug 2021) | v1.1 with fixes for newer Inkscape versions - sorry for the delays |
1.2 | (4 Dec 2023) | PR merged from @mausmaux with thanks |