3d_print/Ala/na_papier.scad

35 lines
No EOL
877 B
OpenSCAD

include <BOSL2/std.scad>
base = [250, 135, 4];
box = [235,120, 95];
t = 1.5;
$slop = 1;
c1 = 0.5;
c2 = -0.5;
top = [120,30];
box_out = [box[0]+2*t, box[1]+2*t, box[2]+t];
// top box
up(box_out[2]/2) difference() {
// box
cuboid(box_out, chamfer=c1, edges=[TOP,"Z"]);
// hollow middle
down(t/2) cuboid(box);
// hole at the top
up(box_out[2]/2) union() {
left(top[0]/2) cyl(d=top[1], h=t, anchor=TOP, chamfer=c2);
right(top[0]/2) cyl(d=top[1], h=t, anchor=TOP, chamfer=c2);
cuboid([top[0], top[1], t], anchor=TOP, chamfer=c2);
}
}
// base
down(base[2])difference() {
cuboid(base, chamfer=c1);
difference() {
// box
up(base[2]/2) cuboid([box_out[0]+$slop,box_out[1]+$slop,base[2]], chamfer=c1, edges="Z");
// hollow middle
down(t/2) cuboid([box[0]-$slop,box[1]-$slop,box[2]]);
}
}