module base(width, height, screw){ difference(){ square([width, height]); side_width = height/6; translate([side_width/2,side_width/2]) square([width-side_width, height-side_width]);} //translate([0,0,-1]) square([width+.75, width/2 + delta]); //translate([width+ ,width/2, -2]) //cylinder(4, d=screw, $fn=50); } module moving(width, height,delta, screw){ short_side = width/2 + delta; difference(){ square([width+delta/2, short_side]); translate([width+delta/4, short_side/2]) circle(d=screw, $fn=50);} } module long_side(width, height){ %polygon([[0,0], [width,0], [width,width]]); polygon([[0, 0], [width, 0], [2*width, width],[1.5*width, width]]); } //Millimeters by default // multiple by 25.4; scale = 25.4*3.77;; screw_diam = 1/8; diam = scale* screw_diam; delta = scale*1.5; * base(scale*6,scale*12); long_side(width, height); * moving(scale*6,scale*12,delta,diam);