chiark / gitweb /
brompton-computer-guard: have holes
[reprap-play.git] / brompton-computer-guard.scad
index aaeaa7b68b9b05cb9a1d0ad98eae809907bc9b76..b720bf1d879a30cc17e7e662d4afad57dad561de 100644 (file)
@@ -6,6 +6,10 @@ end_width = 25;
 
 arch_thick = 5;
 
+arch_breadth = 25;
+
+hole_dia = 3 + 0.5;
+
 // computed
 
 arch_alpha = atan(arch_height / (arch_width/2));
@@ -16,12 +20,8 @@ arch_to_chord = arch_in_rad * cos(arch_beta);
 
 end_thick = arch_thick;
 
-//arch_to_chord = (arch_width/2)*(arch_width/2)/arch_height;
-//arch_in_rad = arch_to_chord + arch_height;
-//arch_in_rad2 = sqrt(arch_to_chord*arch_to_chord +
-//                 (arch_width/2)*(arch_width/2));
-
-//echo(arch_in_rad, arch_in_rad2);
+holes = [[[  5  , 5  ], [16  , 21]], // left
+        [[ 18.5, 4.5], [ 4.5, 22]]]; // right
 
 module ArchProfile(){
   intersection(){
@@ -40,7 +40,26 @@ module ArchProfile(){
          square([end_width, end_thick]);
     }
   }
-  %square([arch_width/2,arch_height]);
 }
 
-ArchProfile();
+module Holes(){
+  for (m=[0,1]) {
+    mirror([1-m,0])
+      translate([arch_width/2, 50, 0])
+      rotate([90,0,0])
+      for (h=holes[m]) {
+       translate(h)
+         cylinder(r=hole_dia/2, h=100, $fn=20);
+      }
+  }
+}
+
+module Arch(){
+  difference(){
+    rotate([0,0,180])
+      linear_extrude(height=arch_breadth) ArchProfile();
+    Holes();
+  }
+}
+
+Arch();