chiark / gitweb /
10254 our tower-base wip
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 23 Aug 2012 13:39:48 +0000 (14:39 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 23 Aug 2012 13:39:48 +0000 (14:39 +0100)
th-10254/tower-base.scad

index ef751ef749093c4b41ca069bc9f426a07c76ce9a..d3676bf343aec7ffe74028bc49cb699817b9f670 100644 (file)
@@ -3,9 +3,11 @@ motorwidth=35.2;
 motorheight=36.5;
 totalheight=65;
 
-pillarthick=8;
+pillarthick=9;
 sidethick=3;
-archthick=6;
+archthick=8;
+frameextra=3.5;
+framesplay=1;
 archoutwards=(pillarthick-archthick)/sqrt(8);
 
 mw2=motorwidth/2;
@@ -14,21 +16,34 @@ include <Libs.scad> //  Libs.scad is @ http://www.thingiverse.com/thing:6021
 
 module corner() {
        $fn=30;
-       slopeheight= totalheight - motorheight;
-       slope = (mw2 + archoutwards)/slopeheight;
+       frameheight= motorheight + frameextra;
+       slopeheight= totalheight - frameheight;
+       slope = (mw2 + archoutwards - framesplay)/slopeheight;
+       echo(sqrt(2)*slope);
+
        translate([-mw2,-mw2,0]) union(){
                difference(){ union(){
-                       cylinder(r=pillarthick/2, h=motorheight);
-                       translate([0,0,motorheight]) sphere(r=pillarthick/2);
+                       cylinder(r=pillarthick/2, h=frameheight);
+                       translate([0,0,frameheight]) sphere(r=pillarthick/2);
                }
                        translate([0,0,-1])
-                               cube([mw2,mw2,motorheight+pillarthick+2]);
+                               cube([mw2,mw2,frameheight+pillarthick+2]);
                }
-               multmatrix([    [       1,      0,      slope,  -archoutwards ],
+               intersection(){
+                       multmatrix
+                          ([   [       1,      0,      slope,  -archoutwards ],
                                [       0,      1,      slope,  -archoutwards ],
-                               [       0,      0,      1, motorheight  ],
+                               [       0,      0,      1, frameheight  ],
                                [       0,      0,      0,      1       ]])
-                       cylinder(r=archthick/2, h=slopeheight);
+                               translate([0,0,-frameextra])
+                               cylinder(r=archthick/2,
+                                        h=slopeheight+frameextra);
+                       union() {
+                               cylinder(r=pillarthick/2, h=frameheight);
+                               translate([-100,-100,frameheight])
+                                       cube([200,200,100]);
+                       }
+               }
        }
 }