From 91a179fa7613ca86fa2af06be698bd36424ed260 Mon Sep 17 00:00:00 2001 From: "Jan \"Yenya\" Kasprzak" Date: Mon, 27 Mar 2023 07:40:10 +0200 Subject: [PATCH] wastebin-bags-holder --- wastebin-bags-holder.scad | 48 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 wastebin-bags-holder.scad diff --git a/wastebin-bags-holder.scad b/wastebin-bags-holder.scad new file mode 100644 index 0000000..147d56f --- /dev/null +++ b/wastebin-bags-holder.scad @@ -0,0 +1,48 @@ +eps = 0.01; +infty = 300; + +wall = 2; +bag_d = 50; +angle = 150; +body_h = 15; +bag_dist = 1.2*bag_d; +bags = 3; +body_l = (bags-1)*bag_dist; +screw_hole = 4; + +module hook() { + difference() { + cylinder(r = bag_d/2 + wall, h = body_h, $fn = 128); + translate([0, 0, -eps]) { + + cylinder(r = bag_d/2, h = body_h + 2*eps, $fn = 128); + translate([0, -bag_d, 0]) + cube([bag_d, 2*bag_d, body_h + 2*eps]); + rotate([0, 0, 90+angle]) + cube([bag_d, bag_d, body_h + 2*eps]); + } + } + + rotate([0, 0, 90+angle]) + translate([bag_d/2+wall, 0, 0]) + cylinder(r = wall, h = body_h, $fn = 32); +} + +difference() { + union() { + translate([0, bag_d/2, 0]) + cube([body_l, wall, body_h]); + + for (i = [0:bags-1]) + translate([bag_dist*i, 0, 0]) + hook(); + } + + for (x = [0, body_l-bag_d/2 - 2*wall]) + translate([x, 0, body_h/2]) + rotate([-90, 0, 0]) + cylinder(r = screw_hole/2, h = bag_d, $fn = 6); +} + + + -- 2.43.0