chiark / gitweb /
sewing-table: FitTest_EndEnd: trim a bit
[reprap-play.git] / tower-base.scad
index 49c317beb7871a1329a258847fdbe9da315710e0..0e097e95c81d9711687ffb88389a64879ccb8e6a 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])
@@ -109,23 +109,44 @@ module towerbase() {
        rotate([0,0,angle]) mirror([1,0,0]) halfside();
       }
     }
-    multmatrix([[      -1,     0,      0, -mw2 - botleftstand ],
-               [       0,      1,      0,      -100    ],
-               [       1,      0,      1, -100 + botleftgap ],
-               [       0,      0,      0,      1       ] ])
-      cube([100,200,100]);
+//    multmatrix([[    -1,     0,      0, -mw2 - botleftstand ],
+//             [       0,      1,      0,      -100    ],
+//             [       1,      0,      1, -100 + botleftgap ],
+//             [       0,      0,      0,      1       ] ])
+//      cube([100,200,100]);
   }
   translate([clippairy/2,0,totalheight]) {
     difference(){
       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();
+}