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

Add Waffle-block style tabs, refactor tab and layout code #15

Merged
merged 3 commits into from
Jan 3, 2020
Merged
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
32 changes: 22 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# BoxMaker: A free tool for creating boxes using tabbed construction

_version 0.94 - 5 Jan 2017_
_version 0.96 - 24 Apr 2017_

Original box maker by Elliot White - http://www.twot.eu/111000/111000.html
Heavily modified by Paul Hutchison
Expand All @@ -13,7 +13,7 @@ Heavily modified by Paul Hutchison
## 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).
Version 0.94 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 ).

Expand Down Expand Up @@ -47,6 +47,17 @@ In order of appearance:
equally into tabs and 'spaces' with the tabs size
greater or equal to the Tab Width setting

* Tab Style - there are three styles of tabs avaiable:
* XY Symmetrix - each piece is symmetric in both the X and Y axes
* Rotate Symmetric ("waffle block") - each piece is symmetric under a 180-degree rotation
(and 90 degrees if that piece is square)
* Antisymmetric - tabs on opposite sides go in opposite directions

* Tab Dimple Height - the height of the dimple to add to the side of each tab, 0 for no dimple

* Tab Dimple Tip Width - the width of the tip of the dimple; dimples are trapezoid shaped with
45-degree sides; using a dimple tip width of 0 gives a triangular dimple

* Material Thickness - as it says

* Kerf - this is the width of the cut ( e.g for 3mm acrylic on an epilog cutter this is
Expand All @@ -55,13 +66,9 @@ In order of appearance:
* Clearance - this value is subtracted from the kerf in cases where you deliberately want
slightly slacker joints ( usually zero )

* Layout/Style - { This is where additions/changes will most likely occur, also having a
problem with live preview: it is best to turn preview off when changing this
setting }
this setting determines both the type of drawing produced and the way tabs
are used on the sides of pieces.
* Layout - controls how the pieces are laid out in the drawing

* Box style - this allows you to choose how many jointed sides you want. Options are:
* Box Type - this allows you to choose how many jointed sides you want. Options are:
* Fully enclosed (6 sides)
* One side open (LxW) - one of the Length x Width panels will be omitted
* Two sides open (LxW and LxH) - two adjacent panels will be omitted
Expand All @@ -72,8 +79,9 @@ In order of appearance:


* 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
along the length axis and have finger joints into the side panels
and slots for Width dividers to slot into
* Note: dividers only work properly when using XY-symetric tabs

* 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
Expand All @@ -87,6 +95,8 @@ In order of appearance:

* 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

## Use - Schroff enclosures

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:
Expand Down Expand Up @@ -122,3 +132,5 @@ version | Date | Notes
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
14 changes: 12 additions & 2 deletions boxmaker.inx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,17 @@
<_option value="1">Proportional</_option>
</param>

<param name="tabstyle" type="optiongroup" _gui-text="Tab Style" appearance="minimal">
<_option value="0">XY Symmetric</_option>
<_option value="1">Rotate Symmetric</_option>
<_option value="2">Antisymmetric</_option>
</param>

<param name="dimpleheight" type="float" precision="2" min="0.0" max="10000.0"
_gui-text="Tab Dimple Height">0.0</param>
<param name="dimplelength" type="float" precision="2" min="0.0" max="10000.0"
_gui-text="Tab Dimple Tip Length">0.0</param>

<param name="hairline" type="optiongroup" _gui-text="Line Thickness" appearance="minimal">
<_option value="0">Default</_option>
<_option value="1">Hairline (0.002" for Epilog)</_option>
Expand All @@ -37,11 +48,10 @@
<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="Joint clearance">0.01</param>

<param name="style" _gui-text="Layout/Style" type="optiongroup" appearance="minimal">
<param name="style" _gui-text="Layout" type="optiongroup" appearance="minimal">
<option value="1">Diagramatic</option>
<option value="2">3 piece</option>
<option value="3">Inline(compact)</option>
<option value="4">Diag Alternate Tabs</option>
</param>

<param name="boxtype" _gui-text="Box Type" type="optiongroup" appearance="minimal">
Expand Down
Loading