Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ported to Inkscape 1.0 by kind soul roastedneutron #5

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
# BoxMaker

(Note: This Github Repository is unofficial. It should be considered a fork of the original
BoxMaker at http://www.keppel.demon.co.uk/111000/111000.html)
(Note: This is a fork of https://github.com/hellerbarde/inkscape-boxmaker)

A free tool for creating boxes using tabbed construction

version 0.85 - February 27 2012

please report bugs, comments etc to [email protected]
version 0.86 - Sep 6 2020

please raise an issue on github if you find bugs

# About

This tool is designed to simplify and speed up process of making practical boxes using
a laser cutter (though it can be used with any CNC cutter) to prepare the pieces.
a laser cutter to prepare the pieces.

The tool works by generating a drawing of the pieces of the box with the tab and hole
size corrected to account for the kerf (width of cut), these pieces are composed of sides,
Expand All @@ -21,26 +22,23 @@ grouped together.

# Release Notes

So far no serious bugs( i.e causing runtime errors ) have been found.
The program works with python versions 2.6.5, 2.6.7 and 2.7.2, other version have not yet
been tried except python 2.5.1 which fails with a syntax error.

This version has been tried on windows XP, windows 7, Ubuntu and Mac OS X with no
serious problems (the live preview works most of the time but can be flaky).

Only crude input checking has been implemented in the program but as the only output
is a drawing the worst that can happen is a messed up picture
(control-Z cures that problem).

# To Do

Improve program documentation. Improve input checking to restrict values to correct
- Improve program documentation. Improve input checking to restrict values to correct
solutions.

- Correct for large kerf correctly for use with CNC mills

- Use 'dogbones' for inner corners

# Use

The interface is pretty self explanatory, the extension is 'Tabbed Box Maker' in the
'Laser Tools' group (hopefully more tools will soon(ish) join it).
'CNC Tools' group.

In order of appearance:

Expand Down Expand Up @@ -97,3 +95,5 @@ how far apart the pieces are in the drawing produced
0.5 ( 9 oct 2011) beta
0.7 (24 oct 2011) first release
0.8 (26 oct 2011) basic input checking implemented
0.85 (Feb 27 2012) (hellerbarde)
0.86 (6 Sep 2020) Ported to Inkscape 1.0 (roastedneutrons)
18 changes: 7 additions & 11 deletions boxmaker.inx
Original file line number Diff line number Diff line change
@@ -1,19 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<_name>Tabbed Box Maker</_name>
<id>eu.twot.render.boxmaker</id>
<id>org.kreu.boxmaker</id>

<dependency type="executable" location="extensions">boxmaker.py</dependency>
<dependency type="executable" location="extensions">simpletransform.py</dependency>
<dependency type="executable" location="extensions">inkex.py</dependency>

<param name="unit" _gui-text="Unit" type="optiongroup" appearance="minimal">
<param name="unit" _gui-text="Unit" type="optiongroup" appearance="combo">
<option value="mm">mm</option>
<option value="cm">cm</option>
<option value="in">in</option>
</param>

<param name="inside" type="optiongroup" _gui-text="Box Dimensions">
<param name="inside" type="optiongroup" _gui-text="Box Dimensions" appearance="combo">
<_option value="1">Inside</_option>
<_option value="0">Outside</_option>
</param>
Expand All @@ -23,7 +19,7 @@
<param name="depth" type="float" precision="3" min="0.0" max="10000.0" _gui-text="Height">1.0</param>
<param name="tab" type="float" precision="2" min="0.0" max="10000.0" _gui-text="Minimum/Prefered Tab Width">1.0</param>

<param name="equal" type="optiongroup" _gui-text="Tab Width">
<param name="equal" type="optiongroup" _gui-text="Tab Width" appearance="combo">
<_option value="0">Fixed</_option>
<_option value="1">Proportional</_option>
</param>
Expand All @@ -32,7 +28,7 @@
<param name="kerf" type="float" precision="3" min="0.0" max="10000.0" _gui-text="Kerf (cut width)">0.1</param>
<param name="clearance" type="float" precision="3" min="0.0" max="10000.0" _gui-text="Clearance">0.01</param>

<param name="style" _gui-text="Layout/Style" type="optiongroup" appearance="minimal">
<param name="style" _gui-text="Layout/Style" type="optiongroup" appearance="combo">
<option value="1">Diagramatic</option>
<option value="2">3 piece</option>
<option value="3">Inline(compact)</option>
Expand All @@ -44,10 +40,10 @@
<effect>
<object-type>all</object-type>
<effects-menu>
<submenu _name="Laser Tools" />
<submenu _name="CNC Tools" />
</effects-menu>
</effect>
<script>
<command reldir="extensions" interpreter="python">boxmaker.py</command>
<command location="inx" interpreter="python">boxmaker.py</command>
</script>
</inkscape-extension>
Loading