]> www.fi.muni.cz Git - things.git/commitdiff
more objects for Kaze glider
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Wed, 10 Apr 2019 12:29:28 +0000 (14:29 +0200)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Wed, 10 Apr 2019 12:29:28 +0000 (14:29 +0200)
wing-tube-clip-front.scad [new file with mode: 0644]
wing-tube-clip-rear.scad [new file with mode: 0644]
wing-tube-joint-dihedral.scad [new file with mode: 0644]

diff --git a/wing-tube-clip-front.scad b/wing-tube-clip-front.scad
new file mode 100644 (file)
index 0000000..4367e74
--- /dev/null
@@ -0,0 +1,44 @@
+eps = 0.01;
+infty = 200;
+
+wall = 1.5;
+
+tube_d = 8.0 + 0.5;
+tube2_d = 6.0 + 0.5;
+tube2_xoff = tube_d/2 + tube2_d/2 + 2.8 + 2;
+
+clip_w = tube2_d + 2*wall;
+
+slot_w = 3;
+slot_angle = 180;
+
+wing_slot = 0.75*tube2_d;
+wing_top_wall = 2.5;
+
+difference() {
+       hull() {
+               // fuse cylinder
+               cylinder(r = tube_d/2 + wall, h = clip_w);
+               // wing cylinder
+               translate([tube2_xoff - tube2_d/2-wall, -tube_d/2 -wall, 0])
+               cube([tube2_d + wall + wing_top_wall, tube_d + 2*wall, tube2_d + 2*wall]);
+       }
+
+       // fuse tube
+       translate([0, 0, -eps])
+               cylinder(r = tube_d/2, h = clip_w + 2*eps);
+
+       // fuse tube slot
+       rotate([0, 0, slot_angle])
+       translate([0, -slot_w/2, -eps])
+               cube([tube_d, slot_w, clip_w + 2*eps]);
+
+       // wing tube
+       translate([tube2_xoff, -tube_d/2-wall-eps, tube2_d/2 + wall])
+       rotate([-90, 0, 0])
+               cylinder(r = tube2_d/2, h = tube_d + 2*wall + 2*eps);
+
+       // wing tube slot
+       translate([tube2_xoff - wing_slot/2, -tube_d/2-wall-eps, tube2_d/2 + wall])
+               cube([wing_slot, tube_d + 2*wall + 2*eps, tube2_d/2 + wall + eps]);
+}
diff --git a/wing-tube-clip-rear.scad b/wing-tube-clip-rear.scad
new file mode 100644 (file)
index 0000000..610453f
--- /dev/null
@@ -0,0 +1,40 @@
+eps = 0.01;
+infty = 200;
+
+wall = 1.5;
+
+tube_d = 8.0 + 0.5;
+
+slot_w = 3;
+slot_angle = 180;
+
+wing_xoff = tube_d/2 + 7; // bottom of the slot
+wing_slot_h = 2.5;
+wing_slot_w = 4;
+
+wing_wall = 3.0;
+
+clip_w = 2*wing_wall + wing_slot_w;
+
+difference() {
+       hull() {
+               // fuse cylinder
+               cylinder(r = tube_d/2 + wall, h = clip_w);
+               // wing clip
+               translate([wing_xoff, -tube_d/2 -wall, 0])
+               cube([wing_slot_h + wing_wall, tube_d + 2*wall, clip_w]);
+       }
+
+       // fuse tube
+       translate([0, 0, -eps])
+               cylinder(r = tube_d/2, h = clip_w + 2*eps);
+
+       // fuse tube slot
+       rotate([0, 0, slot_angle])
+       translate([0, -slot_w/2, -eps])
+               cube([tube_d, slot_w, clip_w + 2*eps]);
+
+       // wing slot
+       translate([wing_xoff, -tube_d/2-wall-eps, wing_wall])
+               cube([wing_slot_h, tube_d + 2*wall + 2*eps, wing_slot_w]);
+}
diff --git a/wing-tube-joint-dihedral.scad b/wing-tube-joint-dihedral.scad
new file mode 100644 (file)
index 0000000..9e0f3f4
--- /dev/null
@@ -0,0 +1,13 @@
+eps = 0.01;
+infty = 200;
+
+wing_tube_d = 8;
+joint_l = 50;
+dihedral = 10;
+
+wall = 1.5;
+
+
+translate([-sin(dihedral)*(wing_tube_d/2+wall), 0,
+       joint_l*sin(dihedral) + (wing_tube_d/2+wall)*cos(dihedral)])
+rotate([0, 90+dihedral, 0]) cylinder(r = wing_tube_d/2 + wall, h = joint_l);