sidethick=2.5;
archthick=6.5;
frameextra=3.5;
-framesplay=1;
+framesplayx=1;
+framesplayy=5;
botleftgap=4.5;
botleftstand=0.75;
archoutwards=(pillarthick-archthick)/sqrt(8);
mw2=motorwidth/2;
-include <Libs.scad> // Libs.scad is @ http://www.thingiverse.com/thing:6021
+include <doveclip.scad>
module corner() {
$fn=30;
frameheight= motorheight + frameextra;
slopeheight= totalheight - frameheight;
- slope = (mw2 + archoutwards - framesplay)/slopeheight;
- echo(sqrt(2)*slope);
+ slopex = (mw2 + archoutwards - framesplayx)/slopeheight;
+ slopey = (mw2 + archoutwards - framesplayy)/slopeheight;
+ //echo(sqrt(2)*slope);
translate([-mw2,-mw2,0]) union(){
difference(){
}
intersection(){
multmatrix
- ([ [ 1, 0, slope, -archoutwards ],
- [ 0, 1, slope, -archoutwards ],
+ ([ [ 1, 0, slopey, -archoutwards ],
+ [ 0, 1, slopex, -archoutwards ],
[ 0, 0, 1, frameheight ],
[ 0, 0, 0, 1 ]])
translate([0,0,-frameextra])
module towerbase() {
difference(){
union(){
- for (angle=[0,90,180,270])
- rotate([0,0,angle]) corner();
+ for (mirx=[0,1]) for (miry=[0,1])
+ mirror([mirx,0,0]) mirror([0,miry,0]) corner();
for (angle=[0,90,180]) {
rotate([0,0,angle]) halfside();
rotate([0,0,angle]) mirror([1,0,0]) halfside();
[ 0, 0, 0, 1 ] ])
cube([100,200,100]);
}
- translate([0,0,totalheight])
- rotate([0,-90,0])
- intersection(){
- dovetail(height=10.1, male=true);
- translate([dovebasecutcylz,0,-100])
- cylinder(r=dovebasecutcylr,h=200);
- };
+ translate([0,-5.0,totalheight]) {
+ rotate([-90,0,0])
+ DoveClipPair(h=10.1);
+ }
}
//intersection(){