summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--connector.scad36
-rw-r--r--connector_front.scad9
2 files changed, 24 insertions, 21 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);
}
diff --git a/connector_front.scad b/connector_front.scad
index ccfe56e..5d9c796 100644
--- a/connector_front.scad
+++ b/connector_front.scad
@@ -18,11 +18,6 @@ module front_connector_half(
cube([bar_thickness, bar_thickness, bar_thickness]);
}
- // receiver for rail
- if (!border_side)
- translate([bar_thickness/2 - rail_thickness, 0, bar_thickness - rail_thickness])
- rail();
-
// holes for thread rods (horizontal, vertical)
translate([0, bar_thickness / 2, 0])
cylinder(h = tray_height, r = (rod_diameter + pla_epsilon) / 2, $fs=0.1);
@@ -33,10 +28,6 @@ module front_connector_half(
if (border_bottom)
translate([0, bar_thickness / 2, 0])
cylinder(h=nut_height, r=nut_diameter/2 + pla_epsilon, $fs=0.1);
-
- // female downward positioning nippel
- if (!border_top)
- translate([rail_width, bar_thickness / 2, tray_height]) nipple(pla_epsilon);
}
module front_connector(
contact: Jan Huwald // Impressum