diff options
author | Jan Huwald <jh@sotun.de> | 2014-02-11 12:04:42 (GMT) |
---|---|---|
committer | Jan Huwald <jh@sotun.de> | 2014-02-11 12:04:42 (GMT) |
commit | ac8c4ea248cb8d94a402c708a68eeb0656f1d816 (patch) | |
tree | 0a8562aa0bf481dd90894b3abe4b0645e3cf6901 | |
parent | b4f0e8ec9d2d9dd99ffcb381f9656de51ae5bf9d (diff) |
fractor out connector sceleton common to front and back
-rw-r--r-- | connector.scad | 35 | ||||
-rw-r--r-- | connector_front.scad | 27 |
2 files changed, 37 insertions, 25 deletions
diff --git a/connector.scad b/connector.scad new file mode 100644 index 0000000..384d692 --- /dev/null +++ b/connector.scad @@ -0,0 +1,35 @@ +// common base module for front and back connector + +include <parameters.scad> + +use <nipple.scad> + +module connector_half( + border_side = false, + border_top = false, + border_bottom = false +) { + // vertical bar + cube([bar_thickness/2, bar_thickness, tray_height]); + + if (!border_side) { + // upper horizontal bar + translate([0, 0, tray_height - bar_thickness]) + cube([tray_width / 2, bar_thickness, bar_thickness]); + + // lower horizontal bar + cube([bar_thickness/2 + rail_width + pla_epsilon, bar_thickness, bar_thickness]); + + // vertical thread bold receiver (extremal) + translate([tray_width/2 - bar_thickness, bar_thickness, tray_height-bar_thickness]) + cube([bar_thickness, bar_thickness, bar_thickness]); + } + + // vertical thread bold receiver (central) + translate([0, bar_thickness, tray_height-bar_thickness]) + cube([bar_thickness/2, bar_thickness, bar_thickness]); + + // male downward positioning nippel + if (!border_bottom) + translate([rail_width, bar_thickness / 2, 0]) nipple(); +} diff --git a/connector_front.scad b/connector_front.scad index 434729f..b3bacb8 100644 --- a/connector_front.scad +++ b/connector_front.scad @@ -1,5 +1,6 @@ include <parameters.scad> +use <connector.scad> use <nipple.scad> use <rail.scad> @@ -8,31 +9,7 @@ module front_connector_half( border_top = false, border_bottom = false ) difference() { - union() { - // vertical bar - cube([bar_thickness/2, bar_thickness, tray_height]); - - if (!border_side) { - // upper horizontal bar - translate([0, 0, tray_height - bar_thickness]) - cube([tray_width / 2, bar_thickness, bar_thickness]); - - // lower horizontal bar - cube([bar_thickness/2 + rail_width + pla_epsilon, bar_thickness, bar_thickness]); - - // vertical thread bold receiver (extremal) - translate([tray_width/2 - bar_thickness, bar_thickness, tray_height-bar_thickness]) - cube([bar_thickness, bar_thickness, bar_thickness]); - } - - // vertical thread bold receiver (central) - translate([0, bar_thickness, tray_height-bar_thickness]) - cube([bar_thickness/2, bar_thickness, bar_thickness]); - - // male downward positioning nippel - if (!border_bottom) - translate([rail_width, bar_thickness / 2, 0]) nipple(); - } + connector_half(border_side, border_top, border_bottom); // receiver for rail if (!border_side) |