-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, $fn = 32);
+ // upper clip
+ translate([-infty/2, -infty/2, tube_zoff + 5*tube_d/6])
+ cube(infty);
+
+ // front-side hole
+ translate([0.7*base_front, 0, -eps])
+ scale([1, base_l/base_front, 1])
+ cylinder(r = base_front/5, 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);
+ }
+}