Commit Graph

37 Commits

Author SHA1 Message Date
Joel Ebel
502e623485 Support holes in thicker panels
Panel cutouts were limited to 10mm. Scale them by PanelThick to make
debugging more appealing and support ridiculously thick panels.
2018-05-09 13:18:36 -04:00
Joel Ebel
30ff50a8f3 Shorten some long lines. 2018-05-08 23:35:36 -04:00
Joel Ebel
30dcdeb6c7 Widen foot to get full filet. 2018-05-08 23:29:22 -04:00
Joel Ebel
61eb5c4ddd simplify translation 2018-05-08 23:27:46 -04:00
Joel Ebel
9546fba70e Support FootFilet in parameters
Default it to Thick so it scales with the box.
2018-05-08 23:25:48 -04:00
Joel Ebel
b1dfdd74e1 Support taller feet
Make the foot exterior cutout square as tall as FootHeight.
Previously making it taller than 100 made the top wider.
This is obviously ridiculous, but no harder to do right, and looks nicer
when debugging.
2018-05-08 23:15:23 -04:00
Joel Ebel
55e7cf32ea Center box decorations on the box.
Previously they were shifted to the front by half the vent width. This
should be better parametrized still. Particularly the closeness to the
edge.
2018-05-08 23:05:20 -04:00
Joel Ebel
948e585f82 Fix position of front panel 2018-05-08 23:01:26 -04:00
Joel Ebel
22c7e7f369 Support PanelThick different from Thick
If PanelThick is equal to Thick, all is the same. If it is different,
then only the ends are scaled. Everything in the middle, including box
decorations and feet remain in the same position relative to the
interior of the panels.
2018-05-08 22:55:15 -04:00
Joel Ebel
0fde4bf5a5 Remove some unnecessary shifting of cutouts
The 45 degree box for the bottom angled cutout of the box tabs was
unnecessarily shifted.
The rectangular cutout for the sides of the tabs was unnecessarily wide,
and the margin depended on the thickness, which doesn't make much sense.
It depends more on the printer, so this margin should be parametrized in
a later CL.
2018-05-08 22:46:27 -04:00
Joel Ebel
a23913215d Also fix height of interior through-box 2018-05-08 22:38:14 -04:00
Joel Ebel
3b13aafbdd Scale upper cutout cube to thickness
Rather than fixed 100
2018-05-08 22:29:14 -04:00
Joel Ebel
abbc0a8cec Large rail box decreased in vertical height.
While it has no impact on the outcome, the large outer box was taller
than it needed to be, and didn't accurately represent the box size when
debugged. This was probably an error of the Thick = Thick*2 change.
2018-05-08 22:19:42 -04:00
Joel Ebel
687ba3448f Center the interior box
The interior box (fins for holding the panel) was oddly not centered.
Shift it using the proper parameters for it to be centered.
It also was shifted vertically by 0.1 to remove "the artifact" I'm not
sure what this artifact is, so I'm removing the shift until I see reason
not to. It also makes the interior hole of the feet shorter by 0.1 and
the tolerance under the board 0.1 less, so it seems a bit wrong to have
in place.
2018-05-08 22:14:57 -04:00
Joel Ebel
5ac9a55a59 Remove Thick = Thick*2
The Coque module was setting Thick = Thick*2 which causes confusion
while reading, likelihood of errors, and difficulty in modification.
I removed this, and replace every invocation with Thick*2, simplifying
where appropriate. This is largely in preparation of separating Panel
thickness from Thick.
2018-05-08 22:05:11 -04:00
Joel Ebel
85047a9ee1 Set hole sizes and CutoutMargin
Add ScrewHole and FootHole parameters
Set them to #4 coarse thread size.
Use them in appropriate places on tabs and feet

Add CutoutMargin parameter as a margin around interior cutouts.
Apply it to foot, CylinderHole, and SquareHole
2018-05-07 23:26:42 -04:00
Joel Ebel
748fe0490f Separate conveniance variable for front and back 2018-05-07 22:55:48 -04:00
Joel Ebel
72910f55ae Add a PCBThick parameter
Use it to calculate the top margin from the top of the board.
Draw the transparent board with appropriate thickness
Provide convenience variables for board position on panel.
2018-05-07 22:52:51 -04:00
Joel Ebel
2942f6005c Use FootHeight as height above box interior.
It is also the depth of  the screw hole, which is likely how it will be
calculated.
2018-05-07 22:20:13 -04:00
Joel Ebel
b0027648f0 Calculate foot positions parametrically
Add paramaters for X and Y positions of all 4 feet.
Use those when creating feet relative to the board position.
2018-05-07 01:43:55 -04:00
Joel Ebel
71b624d01b Only build feet if bottom shell is also built. 2018-05-07 01:38:51 -04:00
Joel Ebel
5b32230d54 minor fixes
Removed parens for style consistency.
Fixied call to color() to be consistent with other calls.
2018-05-07 01:34:09 -04:00
Joel Ebel
e429ccf09a Calculate dimensions from PCB and margins
Add parameters for PCB size and margins on all sides.
Generate the box dimensions from these sizes.
Place the PCB appropriately based on the margins.

This has a change in definition, as the previous PCB size was the size
of the square made by the mounting holes. Now it is the size of the
actual PCB.

Holes are still mounted 5mm inside the edges. Hole positioning will come
soon.
2018-05-07 01:31:15 -04:00
Joel Ebel
f5c3339696 Separate text color, and left align example text. 2018-05-05 23:28:08 -04:00
Joel Ebel
e32feb5ace Add echoes for panels to aid debugging. 2018-05-05 23:11:27 -04:00
Joel Ebel
806da059b0 Add editable back panel support
Holes and letters can be added to the back the same as the front.
Calculate PanelWidth and PanelHeight from parameters and use globally.
2018-05-05 22:41:30 -04:00
Joel Ebel
3d17e5a9da Add horizontal alignment argument to LText module 2018-05-05 22:06:54 -04:00
Joel Ebel
c65efe43dd Remove a scale by scaling the inputs to the panel 2018-05-05 22:01:18 -04:00
Joel Ebel
f52b47a68d Add module documentation
Before each module, describe the function and inputs
Also added a few comments identifying block endings.
Added a missing space after a "for".
2018-05-04 17:55:51 -04:00
Joel Ebel
4bd44dd297 Clean up line spacing and comments
Also add blocks for color()
2018-05-04 01:03:56 -04:00
Joel Ebel
294e4ee3f3 Call all functions in a consistent style.
Fixed a few minor issues in the process (typoed "square" in previous
commit")
Put curly braces around blocks that didn't have them for consistency.
Notably, re-ordered arguments for "cylinder" since the manual says if
you have named arguments, all following arguments must be named. So now
all cylinders have the height first, unnamed, followed by either r= or
d=, and then $fn= if it isn't otherwise specified in the block.
2018-05-04 00:47:36 -04:00
Joel Ebel
40e125b833 Improve spacing
Add/remove lots of spacing for consistency. Add/remove a few parenthesis
for arithmetic readability.

Actually undo previous spacing because I disagree with the style guide
referenced previously.
2018-05-04 00:01:57 -04:00
Joel Ebel
3767d5bd27 Put all if blocks in curly braces and use spacing
Following style guide at https://www.thingiverse.com/thing:12768
2018-05-03 22:01:52 -04:00
Joel Ebel
07d3dfa9bb Use consistent indenting
Chose 4 spaces because the OpenSCAD editor uses that by default.
2018-05-02 23:55:34 -04:00
Joel Ebel
70157878b5 Remove trailing whitespace and CR line breaks. 2018-05-02 22:52:43 -04:00
Joel Ebel
d67ec15e6c Initial checkin downloaded from thingiverse 2018-05-02 22:05:21 -04:00
Joel Ebel
028dd4be4b
Initial commit 2018-05-02 22:00:37 -04:00