summaryrefslogtreecommitdiff
path: root/connector.scad
diff options
context:
space:
mode:
Diffstat (limited to 'connector.scad')
-rw-r--r--connector.scad36
1 files changed, 24 insertions, 12 deletions
diff --git a/connector.scad b/connector.scad
index 89b5f9d..bc17e98 100644
--- a/connector.scad
+++ b/connector.scad
@@ -3,25 +3,37 @@
include <parameters.scad>
use <nipple.scad>
+use <rail.scad>
module connector_half(
border_side = false,
border_top = false,
border_bottom = false
-) {
- // vertical bar
- cube([bar_thickness/2, bar_thickness, tray_height]);
+) 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]);
+ 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]);
+ // lower horizontal bar
+ cube([bar_thickness/2 + rail_width + pla_epsilon, bar_thickness, bar_thickness]);
+ }
+
+ // male downward positioning nippel
+ if (!border_bottom && !border_side)
+ translate([rail_width, bar_thickness / 2, 0]) nipple();
}
- // male downward positioning nippel
- if (!border_bottom && !border_side)
- translate([rail_width, bar_thickness / 2, 0]) nipple();
+ // receiver for rail
+ if (!border_side)
+ translate([bar_thickness/2 - rail_thickness, 0, bar_thickness - rail_thickness])
+ rail();
+
+ // female downward positioning nippel
+ if (!border_top)
+ translate([rail_width, bar_thickness / 2, tray_height]) nipple(pla_epsilon);
}
contact: Jan Huwald // Impressum