round-press-die/round-press-die.scad
2024-05-14 15:55:14 -07:00

40 lines
1.1 KiB
OpenSCAD

include <BOSL2/std.scad>
$fn=100;
topHeight=140; // total height?
topWidth=26;
cutoutDepth=3;
cutoutHeight=8.3;
cutoutFromTop=17.75;
shelfHeight=30.5;
shelfDepth=13;
ballWidth=2*INCH;
thickness=145; //6*INCH;
rounding=2;
diff("remove","keep") {
cuboid([topHeight-ballWidth,topWidth,thickness], anchor=BOTTOM, rounding=rounding){
tag("remove") {
// cutout
position(BACK+BOTTOM+LEFT) down(1) right(cutoutFromTop)
cuboid([cutoutHeight,cutoutDepth*2,thickness+4], anchor=BOTTOM+LEFT);
// shelf
position(FRONT+BOTTOM+LEFT) left(1) down(1)
cuboid([shelfHeight+1,shelfDepth*2,thickness+4], anchor=BOTTOM+LEFT);
// relief
position(BACK+BOTTOM+RIGHT) left(shelfHeight) down(1)
cyl(thickness+2,d=shelfHeight*3, anchor=FRONT+BOTTOM+LEFT);
}
tag("keep") position(FRONT+RIGHT) cuboid([ballWidth/2,topWidth/2,thickness], rounding=rounding, anchor=FRONT);
// ruler
//position(TOP+BACK+LEFT) up(10) back(15) ruler(topHeight,10);
}
}
right(topHeight/2) fwd(topWidth/4) cyl(thickness, d=ballWidth, anchor=BOTTOM, rounding=rounding);