X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=sidebyside;f=sponge-holder.scad;h=55ff2cabf918c3be663eae3a89bf977616cf88ae;hb=9bb9ae4a8bd91bcf3bc34c0565b528bf2269761d;hp=f54ea65bbf1c70ccd7166ea5e0a957e82ad7faf1;hpb=8d95356fd59024b16095e4f193b5e761442682f2;p=things.git diff --git a/sponge-holder.scad b/sponge-holder.scad index f54ea65..55ff2ca 100644 --- a/sponge-holder.scad +++ b/sponge-holder.scad @@ -1,29 +1,34 @@ eps = 0.01; infty = 200; -v_tube_d = 28.2 - 0.5; +v_tube_d = 28.2 - 1; h_tube_d = 45; x_off = 35; -sponge_l = 45; // original size is 85 + 5; -sponge_w = 58 + 8; -sponge_h = 30 + 3; +sponge_l = 55; // original size is 85 + 5; +sponge_w = 58 + 10; +sponge_h = 30 + 5; wall = 1.5; clip_h = 15; +clip_w = 4; module clip() { difference() { - cylinder(r = v_tube_d/2 + 2*wall, h = clip_h, $fn = 128); + cylinder(r = v_tube_d/2 + clip_w, h = clip_h, $fn = 128); translate([0, 0, -eps]) - cylinder(r = v_tube_d/2 + wall, h = clip_h+2*eps); - translate([-infty-v_tube_d/5, -infty/2, -eps]) - cube(infty); + cylinder(r = v_tube_d/2, h = clip_h+2*eps); + intersection() { + rotate([0, 0, -30]) + translate([-infty/2, 0, -eps]) cube(infty); + rotate([0, 0, 40]) + translate([-infty/2, 0, -eps]) cube(infty); + } } - for (angle = [-1.5*72:72:1.5*72]) rotate([0, 0, angle]) - translate([v_tube_d/2 + wall, 0, 0]) - cylinder(r = wall, h = clip_h); + // for (angle = [-1.5*72:72:1.5*72]) rotate([0, 0, angle]) + // translate([v_tube_d/2 + wall, 0, 0]) + // cylinder(r = wall, h = clip_h); } module perf_wall(w, h, d, hx, hy, dx, dy, side) { @@ -66,16 +71,25 @@ module box() { hy = 20, hx = 10, dx = 3, dy = 2, side=2); for (y = [-sponge_w/4, 0, sponge_w/4]) - translate ([0, y, sponge_l]) + translate ([0, y, 0]) + // translate ([0, y, sponge_l]) cube([sponge_h + 2*wall, wall, wall]); } module side_handlers() { - for (y = [-1, 1]) scale ([1, y, 1]) hull() { translate([0, sponge_w/2, 0]) cube([wall, wall, clip_h]); - translate([-v_tube_d/2-x_off, v_tube_d/2+wall, 0]) + translate([-x_off-v_tube_d/2, 0, 0]) + rotate([0, 0, 34]) + translate([v_tube_d/2+clip_w-2*wall, -wall, 0]) + cube([2*wall, 2*wall, clip_h]); + } + + hull() { + translate([0, -sponge_w/2-wall, 0]) + cube([wall, wall, clip_h]); + translate([-x_off-v_tube_d/2, -v_tube_d/2-clip_w, 0]) cube([wall, wall, clip_h]); }