X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=madstab-joiner-end.scad;h=9cabbd3929f49c0080cb76c065d68b250ac2739c;hb=HEAD;hp=e72d989ec84a829d276ebb918b33a9ef8f48d27f;hpb=07fce488a4cf226110dff59f98a3abef746f9f99;p=things.git diff --git a/madstab-joiner-end.scad b/madstab-joiner-end.scad index e72d989..9cabbd3 100644 --- a/madstab-joiner-end.scad +++ b/madstab-joiner-end.scad @@ -1,13 +1,13 @@ eps = 0.01; infty = 200; -wall = 1.5; +wall = 2.0; thin_wall = 0.6; stab_tube_d = 2.0 + 0.5; -stab_tube_d2 = stab_tube_d; -stab_tube_l = 20; -stab_tube_wall = 1; +stab_tube_l = 24; +stab_tube_wall = 1.5; +stab_tube_xoff = 2; fuse_tube_d = 8.0; fuse_tube_l = 12; @@ -17,6 +17,8 @@ slot_w = 3.5; base_d = 15; base_h = 0.6; +fiber_hole_d = 1.2; + module body() { // fuse tube hull() { @@ -26,13 +28,12 @@ module body() { rotate([90, 0, 0]) cylinder(r = fuse_tube_d/2 + wall, h = fuse_tube_l); } - // stab tube + // stab tube + support hull() { - translate([-fuse_tube_d/2-wall, fuse_tube_l/2-eps, 0]) - cube([stab_tube_l, stab_tube_d2+2*eps, eps]); - translate([-fuse_tube_d/2-wall, fuse_tube_l/2+stab_tube_d2/2, stab_tube_d2/2+stab_tube_wall]) - rotate([0, 90, 0]) - cylinder(r = stab_tube_d2/2+stab_tube_wall+eps, h = stab_tube_l); + translate([-fuse_tube_d/2-stab_tube_xoff-wall, fuse_tube_l/2-wall, 0]) + cube([stab_tube_l, stab_tube_d/2+wall, stab_tube_d + 2*stab_tube_wall]); + translate([-fuse_tube_d/2 - wall, -fuse_tube_l/2, 0]) + cube([fuse_tube_d + wall, eps, thin_wall]); } } @@ -47,13 +48,27 @@ difference() { cube([slot_w, fuse_tube_l + 2*eps, fuse_tube_d/2+wall+eps]); // stab tube - translate([-fuse_tube_d/2-wall-eps, fuse_tube_l/2 + stab_tube_d2/2, stab_tube_d2/2 +stab_tube_wall]) + translate([-fuse_tube_d/2-stab_tube_xoff-wall-eps, fuse_tube_l/2 + stab_tube_d/2, stab_tube_d/2 +stab_tube_wall]) rotate([0, 90, 0]) - cylinder(r = stab_tube_d2/2, h = stab_tube_l + 2*eps, $fn = 6); + cylinder(r = stab_tube_d/2, h = stab_tube_l + 2*eps, $fn = 6); + + // right fiber hole + translate([-fuse_tube_d/2-wall-fiber_hole_d/2, fuse_tube_l/2-wall-fiber_hole_d/2, -eps]) + cylinder(r = fiber_hole_d/2, h = stab_tube_d + 2*stab_tube_wall + 2*eps, $fn = 6); + // right fiber slot + translate([-fuse_tube_d/2-wall-fiber_hole_d/2, fuse_tube_l/2+stab_tube_d/2, -eps]) + cylinder(r = fiber_hole_d/2, h = stab_tube_d + 2*stab_tube_wall + 2*eps, $fn = 6); + // left fiber hole + translate([stab_tube_l-fuse_tube_d/2-stab_tube_xoff-2*wall-fiber_hole_d/2, fuse_tube_l/2-wall-fiber_hole_d/2, -eps]) + cylinder(r = fiber_hole_d/2, h = stab_tube_d + 2*stab_tube_wall + 2*eps, $fn = 6); + // left fiber slot + translate([stab_tube_l-fuse_tube_d/2-stab_tube_xoff-2*wall-fiber_hole_d/2, fuse_tube_l/2+stab_tube_d/2, -eps]) + cylinder(r = fiber_hole_d/2, h = stab_tube_d + 2*stab_tube_wall + 2*eps, $fn = 6); } // endpoint stopper +/* translate([0, 2*fuse_tube_l, 0]) difference() { union() { @@ -64,4 +79,5 @@ difference() { translate([0, 0, -eps]) cylinder(r = stab_tube_d/2, h = 2*wall + 2*eps); } +*/