chiark / gitweb /
poster-tube-lid: sloping bottom of catch tip
[reprap-play.git] / tower-base.scad
index 103fa9b..0e097e9 100644 (file)
@@ -1,6 +1,6 @@
 /* -*- C -*- */
 
-motorwidth=35.2;
+motorwidth=35.7;
 motorheight=34.5;
 totalheight=58;
 
@@ -9,11 +9,17 @@ sidethick=2.5;
 archthick=6.5;
 frameextra=3.5;
 framesplayx=5;
-framesplayy=1;
+framesplayy=5;
 botleftgap=4.5;
 botleftstand=0.75;
 archoutwards=(pillarthick-archthick)/sqrt(8);
 
+topgluecubex=18;
+topgluecubez=5;
+clippairy=16;
+clippairdz=-2.5;
+topgluecubedy=1;
+
 dovebasecutcylz=4;
 dovebasecutcylr=10;
 
@@ -94,12 +100,6 @@ module halfside() {
 }
 
 module towerbase() {
-  topgluecubex=17;
-  topgluecubez=5;
-  clippairy=10;
-  clippairdz=-2.5;
-  topgluecubedy=1;
-
   difference(){
     union(){
       for (mirx=[0,1]) for (miry=[0,1])
@@ -120,12 +120,33 @@ module towerbase() {
       translate([-clippairy+topgluecubedy/2,-topgluecubex/2,0])
        cube([clippairy-topgluecubedy,topgluecubex,topgluecubez]);
     }
-    translate([0,0,topgluecubez+clippairdz]) rotate([-90,0,90])
-      DoveClipPair(h=clippairy);
+    translate([0,0,topgluecubez+clippairdz+DoveClip_depth()]) rotate([0,-90,0])
+//      DoveClipPair(h=clippairy);
+      DoveClipPairSane(h=clippairy, count=3);
   }
 }
 
-//intersection(){
-towerbase();
-//     translate([-100,-100,0]) cube([200,200,32]);
-//}
+if (towerbase_demo) {
+  intersection(){
+    translate([0,0,-50]) towerbase();
+    translate([-100,-100,0]) cube([200,200,32]);
+  }
+
+  intersection(){
+    translate([40,0,-60]) towerbase();
+    translate([-100,-100,0]) cube([200,200,32]);
+  }
+
+  translate([60,-90,0]) {
+    DoveClipPairSane(h=clippairy, count=3);
+    mirror([1,0,0]) translate([DoveClip_depth()-0.1,0,0]) cube([20,8,6]);
+  }
+
+  for (x=[0,20,40]) {
+    translate([x,-50,0]) DoveClipPin(h=clippairy);
+    translate([x+10,-50,0]) DoveClipPin(h=clippairy/2);
+    translate([x+10,-30,0]) DoveClipPin(h=clippairy/2);
+  }
+} else {
+  towerbase();
+}