+module halfside() {
+ spacesz = (motorwidth - pillarthick/2*2) / 4;
+ panelheight = spacesz + sidethick;
+ panelbasez = motorheight+pillarthick/4-panelheight;
+ translate([0,-mw2,0]) {
+ translate([-mw2,-sidethick,0])
+ cube([motorwidth,sidethick,sidethick]);
+ difference(){
+ translate([-mw2,-sidethick, panelbasez])
+ cube([mw2,sidethick,panelheight]);
+ translate([-mw2+pillarthick/3, -sidethick, panelbasez])
+ rotate([0,45,0])
+ translate([0,-1,0])
+ cube([spacesz * sqrt(2),
+ sidethick+2,
+ spacesz * sqrt(2)]);
+ }
+ intersection(){
+ union(){
+ translate([-mw2+pillarthick/3,
+ -sidethick, panelbasez])
+ rotate([0,45,0])
+ translate([0,0,-sidethick])
+ cube([100, sidethick, sidethick]);
+ translate([0,
+ -sidethick,
+ panelbasez + sidethick/sqrt(2)])
+ rotate([0,45,0])
+ translate([0,0,-sidethick])
+ cube([100, sidethick, sidethick]);
+ }
+ translate([-mw2,-sidethick,0])
+ cube([motorwidth,sidethick,
+ motorheight+pillarthick]);
+ }
+ }
+}
+