From 9bfddce3755c1d1fed7adb9f9662d240dec7f70e Mon Sep 17 00:00:00 2001 From: "Jan \"Yenya\" Kasprzak" Date: Tue, 12 Mar 2019 11:41:49 +0100 Subject: [PATCH] wing tube support: stronger mid section --- wing-tube-support.scad | 66 ++++++++++++++++++++++++++---------------- 1 file changed, 41 insertions(+), 25 deletions(-) diff --git a/wing-tube-support.scad b/wing-tube-support.scad index 908a7b2..0c438f7 100644 --- a/wing-tube-support.scad +++ b/wing-tube-support.scad @@ -1,10 +1,10 @@ eps = 0.01; infty = 100; -wall = 1.5; +wall = 1; thin_wall = 0.6; -tube_d = 6; +tube_d = 6 + 0.3; tube_zoff = 3; base_front = 15; @@ -15,7 +15,7 @@ base_l = 15; tube_l = base_l/2; base_overhang = 0.9; // factor of base_front, base_r, base_l -module body() { +module body(tube_zoff) { // base // scale([1, base_l/base_w, 1]) // cylinder(r = base_w/2, h = thin_wall); @@ -52,35 +52,51 @@ module body() { for (x = [-1,1]) scale([x, 1, 1]) { translate([tube_d/2, -tube_l/2, 0]) - cube([thin_wall, tube_l, tube_zoff + tube_d/2]); + cube([wall, tube_l, tube_zoff + tube_d/2]); } // upper cylinder clip translate([0, -tube_l/2, tube_d/2 + tube_zoff]) intersection() { - rotate([-90, 0, 0]) - cylinder(r = tube_d/2 + thin_wall, h = tube_l); - translate([-tube_d/2-thin_wall, 0, 0]) - cube([tube_d + 2*thin_wall, tube_l, tube_d]); + rotate([-90, 0, 0]) union() { + cylinder(r = tube_d/2 + wall, h = tube_l); + translate([0, 0, tube_l/2 - wall/2]) + cylinder(r = tube_d/2 + wall + thin_wall, + h = wall); + } + translate([-tube_d/2-wall, 0, 0]) + cube([tube_d + 2*wall, tube_l, tube_d]); } } -difference() { - body(); - // main tube - translate([0, -base_l/2-eps, tube_d/2+tube_zoff]) - rotate([-90, 0, 0]) - cylinder(r = tube_d/2, h = base_l + 2*eps); - // upper clip - translate([-infty/2, -infty/2, tube_zoff + 5*tube_d/6]) - cube(infty); +module wing_tube_support(tube_zoff) { + difference() { + body(tube_zoff); + // main tube + translate([0, -base_l/2-eps, tube_d/2+tube_zoff]) + rotate([-90, 0, 0]) + cylinder(r = tube_d/2, h = base_l + 2*eps); + // upper clip + translate([-infty/2, -infty/2, tube_zoff + 5*tube_d/6]) + cube(infty); + + // front-side hole + translate([0.6*base_front, 0, -eps]) + scale([1, base_l/base_front, 1]) + cylinder(r = base_front/4, h = thin_wall + 2*eps); + // rear-side hole + translate([-0.6*base_rear, 0, -eps]) + scale([1, base_l/base_rear, 1]) + cylinder(r = base_rear/4, h = thin_wall + 2*eps); + } +} - // front-side hole - translate([0.6*base_front, 0, -eps]) - scale([1, base_l/base_front, 1]) - cylinder(r = base_front/4, h = thin_wall + 2*eps); - // rear-side hole - translate([-0.6*base_rear, 0, -eps]) - scale([1, base_l/base_rear, 1]) - cylinder(r = base_rear/4, h = thin_wall + 2*eps); +for (q = [-1,1]) { + scale([q, 1, 1]) translate([-base_front - 5, 0, 0]) { + wing_tube_support(1.7); + translate([0, -base_l -5, 0]) + wing_tube_support(2.8); + translate([0, base_l + 5, 0]) + wing_tube_support(0.6); + } } -- 2.43.0