chiark / gitweb /
osstest-arm-psu-bracket: ready for first test print
[reprap-play.git] / osstest-arm-psu-bracket.scad
index 46dba841150e301dd068b65aefd01002f2d792b5..7abb4cfdd7a82beed5ff573ab93d4c74ed9ff8f5 100644 (file)
@@ -7,6 +7,7 @@ endwall = 5;
 sidewall = 8;
 basethick = 3;
 endwallheight = 20;
 sidewall = 8;
 basethick = 3;
 endwallheight = 20;
+morebase = 20;
 
 plugwidth = 35;
 plugstartheight = 10;
 
 plugwidth = 35;
 plugstartheight = 10;
@@ -17,7 +18,8 @@ strapbotgap = 1;
 overstrap = 6;
 
 discdia = 60;
 overstrap = 6;
 
 discdia = 60;
-discoff = 10;
+discoff_rear = 10;
+discoff_front = 50;
 
 sidewallraise = strapbotgap + strapthick + overstrap;
 
 
 sidewallraise = strapbotgap + strapthick + overstrap;
 
@@ -34,9 +36,10 @@ module Sides(){
   }
 }
 
   }
 }
 
-module Ell(){
+module Ell(baseoff){
   translate([-endwall,0,0]) {
   translate([-endwall,0,0]) {
-    cube([mainlen + endwall, width, basethick]);
+    translate([baseoff,0,0])
+      cube([mainlen + endwall + morebase, width, basethick]);
     cube([endwall+0.1, width, endwallheight + sidewallraise + basethick]);
   }
 }
     cube([endwall+0.1, width, endwallheight + sidewallraise + basethick]);
   }
 }
@@ -47,20 +50,39 @@ module Plug(){
     cube([endwall*3, plugwidth, 100], center=true);
 }
 
     cube([endwall*3, plugwidth, 100], center=true);
 }
 
-module Disc(){
+module Disc(discoff){
   translate([discoff + discdia/2, width/2, -1])
   translate([discoff + discdia/2, width/2, -1])
-    cylinder(r=discdia/2, h=50);
+    cylinder(r=discdia/2, h=50, $fn=100);
 }
 
 }
 
-module Block(){
+module Main(baseoff){
   difference(){
     union(){
   difference(){
     union(){
-      Ell();
+      Ell(baseoff);
       Sides();
     }
     Plug();
       Sides();
     }
     Plug();
-    Disc();
   }
 }
 
   }
 }
 
-Block();
+module RearBlock(){
+  difference(){
+    Main(-morebase);
+    Disc(discoff_rear);
+  }
+}
+
+module FrontBlock(){
+  difference(){
+    Main(0);
+    Disc(discoff_front - endwall);
+  }
+}
+
+module Both(){
+  RearBlock();
+  translate([mainlen + endwall + 10, 0, 0])
+    FrontBlock();
+}
+
+Both();