chiark / gitweb /
toolbox-inserts: rails, wip
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 27 Apr 2025 23:27:49 +0000 (00:27 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 27 Apr 2025 23:27:49 +0000 (00:27 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
toolbox-inserts.scad

index daac5a824f2fd1881d29f2689bfe6af11e5ff42c..99b45eeb9b04a30bed06c94fe6d00ab33f5eb6ca 100644 (file)
@@ -15,6 +15,10 @@ fixing_head_th = 2.6;
 fixing_head_d = 7.82 + 0.25;
 plane_min_th = 2;
 
+rail_mount_nom_width = 16;
+rail_mount_side_nom_r_w = 2.5;
+rail_mount_mid_nom_r_w = 5.0;
+
 fixing_pitch = 12.7;
 fixing_depth = 5.0;
 fixing_nom_d = 4;
@@ -198,6 +202,19 @@ module BoxBottomModel() { ////toplevel
   }
 }
 
+//---------- rail ends ----------
+
+module RailMountCutoutElevation() {
+  square([ rail_mount_nom_width, 20 ], center=true);
+}
+module RailMountPositiveElevation() {
+  for (xs = [-1,+1]) {
+    translate([ xs * rail_mount_nom_width/2, -below_plane_z/2 ])
+      scale([ rail_mount_side_nom_r_w / below_plane_z, 1 ])
+      circle(below_plane_z/2);
+  }
+}
+
 //---------- plates and the fixing holes ----------
 
 
@@ -331,6 +348,11 @@ module WellSurroundGapElevationDemo() { ////toplevel
   WellSurroundGapElevation(well_stiffening_height, 20, 50, [0, 50]);
 }
 
+module RailMountElevationDemo() { ////toplevel
+  color("yellow") translate([0,0, -5]) RailMountCutoutElevation();
+  color("purple") translate([0,0, -5]) RailMountPositiveElevation();
+}
+
 module OdAt(x,y) {
   translate(fixing_pitch * [x,y,0])
     children(0);