openscad_pudelko/pudelko.scad

73 lines
1.6 KiB
OpenSCAD

include <BOSL2/std.scad>
$fn = 100;
dlugosc = 152;
szerokosc = 100;
wysokosc = 40;
zaokraglenie = 3;
// koszyczek
dlkoszyczek = 30;
szerkoszyczek = 30;
wyskoszyczek = 40;
dlpattern = 130;
/* module cuboid( */
/* size, */
/* p1, p2, */
/* chamfer, */
/* rounding, */
/* edges=EDGES_ALL, */
/* except=[], */
/* except_edges, */
/* trimcorners=true, */
/* teardrop=false, */
/* clip_angle, */
/* anchor=CENTER, */
/* spin=0, */
/* orient=UP */
/* ) { */
// BOX
/* diff() */
/* cuboid([dlugosc + 4, szerokosc + 4, wysokosc], rounding = zaokraglenie, edges = [FRONT+RIGHT, FRONT+LEFT, BACK+LEFT, BACK+RIGHT], anchor = CENTER + BOTTOM) { */
/* up(2) */
/* tag("remove") */
/* cuboid([dlugosc , szerokosc , wysokosc], rounding = zaokraglenie, edges = [FRONT+RIGHT, FRONT+LEFT, BACK+LEFT, BACK+RIGHT], anchor = CENTER); */
/* } */
diff(keep="szescian")
// 1. Obiekt Pozytywny (Główne Pudełko)
cuboid([dlugosc + 4, szerokosc + 4, wysokosc],
rounding = zaokraglenie,
edges = [FRONT+RIGHT, FRONT+LEFT, BACK+LEFT, BACK+RIGHT],
anchor = CENTER + BOTTOM) {
// 2. Obiekt Negatywny (Wydrążenie pudełka)
// Domyślny diff() szuka "remove"
up(2)
tag("remove")
cuboid([dlugosc, szerokosc, wysokosc],
rounding = zaokraglenie,
edges = [FRONT+RIGHT, FRONT+LEFT, BACK+LEFT, BACK+RIGHT],
anchor = CENTER);
tag("szescian")
diff("dziura_w_szescianie")
cuboid([20,20,20]){
tag("dziura_w_szescianie")position(TOP) cyl(20, anchor=TOP);
}
}