/* -*- C -*- */
-motorwidth=35.2;
-motorheight=36.5;
-totalheight=65;
+motorwidth=35.7;
+motorheight=34.5;
+totalheight=58;
pillarthick=8;
sidethick=2.5;
archthick=6.5;
frameextra=3.5;
-framesplayx=1;
-framesplayy=5;
+framesplayx=5;
+framesplayy=1;
botleftgap=4.5;
botleftstand=0.75;
archoutwards=(pillarthick-archthick)/sqrt(8);
slopeheight= totalheight - frameheight;
slopex = (mw2 + archoutwards - framesplayx)/slopeheight;
slopey = (mw2 + archoutwards - framesplayy)/slopeheight;
- //echo(sqrt(2)*slope);
+ echo(sqrt(slopex*slopex + slopey*slopey));
translate([-mw2,-mw2,0]) union(){
difference(){
[0, 0, panelbasez + sidethick/sqrt(2)]]) {
translate(xz)
translate([0,-sidethick,0])
- rotate([0,45,0])
+ rotate([0,55,0])
translate([0,0,-sidethick])
cube([100, sidethick, sidethick]);
}
}
module towerbase() {
+ topgluecubex=17;
+ topgluecubez=5;
+ clippairy=10;
+ clippairdz=-2.5;
+ topgluecubedy=1;
+
difference(){
union(){
for (mirx=[0,1]) for (miry=[0,1])
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([0,-5.0,totalheight]) {
- rotate([-90,0,0])
- DoveClipPair(h=10.1);
+ 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);
}
}