module tipmount(){ wid = 20.5; len = 35.6; cy= wid/2; cx = len/2; hi = 15; dia= 4.6; sdia = 1.8; //used for guide xspace = 4.5; yspace = 9; difference(){ cube([wid,len,hi]); stealth((cy-yspace/2),(cx+xspace),dia,hi/2,sdia); stealth((cy-yspace/2),(cx),dia,hi/2,sdia); stealth((cy-yspace/2),(cx-xspace),dia,hi/2,sdia); stealth((cy+yspace/2),(cx+xspace),dia,hi/2,sdia); stealth((cy+yspace/2),(cx),dia,hi/2,sdia); stealth((cy+yspace/2),(cx-xspace),dia,hi/2,sdia); } rotate([0,0,0]){ squareoff((cy-yspace/2),(cx+xspace),dia,2.5,-1.4,hi/2); } squareoff((cy-yspace/2),(cx+xspace),dia,2.5,1.4+(dia/2),hi/2); squareoff((cy-yspace/2),(cx),dia,2.5,-1.4,hi/2); squareoff((cy-yspace/2),(cx),dia,2.5,1.4+(dia/2),hi/2); squareoff((cy-yspace/2),(cx-xspace),dia,2.5,-1.4,hi/2); squareoff((cy-yspace/2),(cx-xspace),dia,2.5,1.4+(dia/2),hi/2); squareoff((cy+yspace/2),(cx+xspace),dia,2.5,-1.4,hi/2); squareoff((cy+yspace/2),(cx+xspace),dia,2.5,1.4+(dia/2),hi/2); squareoff((cy+yspace/2),(cx),dia,2.5,-1.4,hi/2); squareoff((cy+yspace/2),(cx),dia,2.5,1.4+(dia/2),hi/2); squareoff((cy+yspace/2),(cx-xspace),dia,2.5,-1.4,hi/2); squareoff((cy+yspace/2),(cx-xspace),dia,2.5,1.4+(dia/2),hi/2); module stealth(wy,lx,dia,hi,sdia){ translate([wy,lx,0]) cylinder(r=sdia, h=hi*2); translate([wy,lx,0]) cylinder(r=dia/2,h=hi); } module squareoff(wy,lx,dia,offx,offy,hi){ translate([(wy-offy),(lx-offx),0]) cube([dia/2,dia,hi]); } }