8 tube_zoff = thin_wall + 3;
16 // translate([-fuse_tube_d/2-wall, -fuse_tube_l/2, 0])
17 // cube([fuse_tube_d + 2*wall, fuse_tube_l, fuse_tube_d + 2*wall]);
18 translate([0, fuse_tube_l/2, fuse_tube_d/2+wall])
20 cylinder(r = fuse_tube_d/2+wall, h = fuse_tube_l);
21 translate([-fuse_tube_d/2-wall, -base_l/2+wall/2, 0])
22 cube([fuse_tube_d + 2*wall, base_l-wall, thin_wall]);
29 translate([0, infty/2, fuse_tube_d/2+wall])
31 cylinder(r = fuse_tube_d/2, h = infty + 2*eps);
32 translate([-slot_w/2, -infty/2, fuse_tube_d/2+wall])
33 cube([slot_w, infty, fuse_tube_d/2+wall+eps]);
40 // scale([1, base_l/base_w, 1])
41 // cylinder(r = base_w/2, h = thin_wall);
42 translate([-base_w/2, -base_l/2, 0]) cube([base_w, base_l, thin_wall]);
47 scale([x, y, 1]) hull() {
48 translate([base_w/2-thin_wall, -base_l/2, 0])
49 cube([thin_wall, thin_wall, thin_wall]);
50 translate([-thin_wall/2, -base_l/2, 0])
51 cube([thin_wall, thin_wall, tube_zoff + tube_d-thin_wall]);
57 scale([x, y, 1]) hull() {
58 translate([base_w/2-thin_wall, base_l/3, 0])
59 cube([thin_wall, thin_wall, thin_wall]);
60 translate([-thin_wall/2, -base_l/2, 0])
61 cube([thin_wall, thin_wall, tube_zoff + tube_d-thin_wall]);
64 // under the tube supports
66 scale([1, y, 1]) hull() {
67 translate([thin_wall/2, -base_l/4, 0])
68 cube([thin_wall, thin_wall, thin_wall]);
69 translate([-thin_wall/2, -base_l/2, 0])
70 cube([thin_wall, thin_wall, tube_zoff + 2*tube_d/3]);
73 // side bottom tube supports
76 scale([x, y, 1]) hull() {
77 translate([tube_d/2, base_l/3, 0])
78 cube([thin_wall, base_l/6, tube_zoff + tube_d/2]);
81 // upper cylinder clip
84 translate([0, base_l/3, tube_d/2 + tube_zoff])
87 cylinder(r = tube_d/2 + thin_wall, h = base_l/6);
88 translate([-tube_d/2-thin_wall, 0, 0])
89 cube([tube_d + 2*thin_wall, base_l/6, tube_d/3]);
96 translate([0, -base_l/2-eps, tube_d/2+tube_zoff])
98 cylinder(r = tube_d/2, h = base_l + 2*eps);