From 2760cf5fee8f37070da273932674c6b36dd08f23 Mon Sep 17 00:00:00 2001 From: mmcwilliams Date: Mon, 24 Aug 2020 17:41:05 -0400 Subject: [PATCH] Remove triangular voids from v3 and move the improved triangular voids into v2 to consolidate the best attempt at this design to that version. --- scad/100ft_v2/gnal_100ft.scad | 14 +++---- scad/100ft_v3/gnal_100ft.scad | 29 -------------- scad/50ft_v2/gnal_50ft.scad | 4 +- scad/50ft_v3/gnal_50ft.scad | 20 ---------- scad/libraries/gnal_v2.scad | 34 +++++++++++++---- scad/libraries/gnal_v3.scad | 72 ----------------------------------- 6 files changed, 35 insertions(+), 138 deletions(-) diff --git a/scad/100ft_v2/gnal_100ft.scad b/scad/100ft_v2/gnal_100ft.scad index 62a5fbd..11b0597 100644 --- a/scad/100ft_v2/gnal_100ft.scad +++ b/scad/100ft_v2/gnal_100ft.scad @@ -105,23 +105,23 @@ module gnal_100ft_spiral (spiral_count = 60, od = 298.75) { translate([0, 0, -.1]) { rotate([0, 0, -90]) { difference () { - film_guide(spiral_count, od); - for (i = [0 : SPOKE_COUNT]) { + film_guide(spiral_count); + for (i = [0 : SPOKE_COUNT - 1]) { rotate([0, 0, (i + 0.5) * (360 / SPOKE_COUNT) ]) { translate([(83 / 4) + (48 / 2), 0, -3.6]) triangle_void(); } } - for (i = [0 : SPOKE_COUNT * 2]) { + for (i = [0 : (SPOKE_COUNT * 2) - 1]) { rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 2)) ]) { - translate([(258 / 2) - (spoke_2_len / 2) + 1 , 0, -3.6]) triangle_void_2(); + translate([(258 / 2) - (spoke_2_len / 2) + 1 , 0, -3.6 ]) triangle_void_2(i); } } - for (i = [0 : SPOKE_COUNT * 4]) { + for (i = [0 : (SPOKE_COUNT * 4) - 1]) { rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 4)) ]) { if (i % 2 == 0) { - translate([(outer_d / 2) - (spoke_3_len / 2) + 1 , 0.3, -3.6]) triangle_void_3(); + translate([(outer_d / 2) - (spoke_3_len / 2) + 1 , 0.3, -3.6]) triangle_void_3(i); } else { - translate([(outer_d / 2) - (spoke_3_len / 2) + 1, -0.3, -3.6]) triangle_void_3(); + translate([(outer_d / 2) - (spoke_3_len / 2) + 1 , -0.3, -3.6]) triangle_void_3(i); } } } diff --git a/scad/100ft_v3/gnal_100ft.scad b/scad/100ft_v3/gnal_100ft.scad index 43ca898..c0af737 100644 --- a/scad/100ft_v3/gnal_100ft.scad +++ b/scad/100ft_v3/gnal_100ft.scad @@ -101,35 +101,6 @@ module gnal_100ft_spiral (spiral_count = 60, od = 298.75, quarter = false) { } } - //Triangular voids - /* - translate([0, 0, -.1]) { - rotate([0, 0, -90]) { - difference () { - film_guide(spiral_count); - for (i = [0 : SPOKE_COUNT - 1]) { - rotate([0, 0, (i + 0.5) * (360 / SPOKE_COUNT) ]) { - translate([(83 / 4) + (48 / 2), 0, -3.6]) triangle_void(); - } - } - for (i = [0 : (SPOKE_COUNT * 2) - 1]) { - rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 2)) ]) { - translate([(258 / 2) - (spoke_2_len / 2) + 1 , 0, -3.6 ]) triangle_void_2(i); - } - } - for (i = [0 : (SPOKE_COUNT * 4) - 1]) { - rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 4)) ]) { - if (i % 2 == 0) { - translate([(outer_d / 2) - (spoke_3_len / 2) + 1 , 0.3, -3.6]) triangle_void_3(i); - } else { - translate([(outer_d / 2) - (spoke_3_len / 2) + 1 , -0.3, -3.6]) triangle_void_3(i); - } - } - } - } - } - } - */ translate([0, 0, -.1]) { rotate([0, 0, -90]) { film_guide2(spiral_count); diff --git a/scad/50ft_v2/gnal_50ft.scad b/scad/50ft_v2/gnal_50ft.scad index eacc1a9..94b3300 100644 --- a/scad/50ft_v2/gnal_50ft.scad +++ b/scad/50ft_v2/gnal_50ft.scad @@ -65,7 +65,7 @@ module gnal_50ft_spiral (spiral_count = 40, od = 215.75) { translate([0, 0, -.1]) { rotate([0, 0, -90]) { difference () { - film_guide(spiral_count, od); + film_guide(spiral_count); for (i = [0 : SPOKE_COUNT]) { rotate([0, 0, (i + 0.5) * (360 / SPOKE_COUNT) ]) { translate([(spoke_len / 4) + (48 / 2), 0, -3.6]) triangle_void(); @@ -73,7 +73,7 @@ module gnal_50ft_spiral (spiral_count = 40, od = 215.75) { } for (i = [0 : SPOKE_COUNT * 2]) { rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 2)) ]) { - translate([(outer_d / 2) - (spoke_2_len / 2) + 1 , 0, -3.6]) triangle_void_2(); + translate([(outer_d / 2) - (spoke_2_len / 2) + 1 , 0, -3.6]) triangle_void_2(i); } } } diff --git a/scad/50ft_v3/gnal_50ft.scad b/scad/50ft_v3/gnal_50ft.scad index fc2da77..e0a031f 100644 --- a/scad/50ft_v3/gnal_50ft.scad +++ b/scad/50ft_v3/gnal_50ft.scad @@ -62,26 +62,6 @@ module gnal_50ft_spiral (spiral_count = 40, od = 215.75, quarter = false) { } } - //Triangular voids - /* - translate([0, 0, -.1]) { - rotate([0, 0, -90]) { - difference () { - film_guide(spiral_count); - for (i = [0 : SPOKE_COUNT]) { - rotate([0, 0, (i + 0.5) * (360 / SPOKE_COUNT) ]) { - translate([(spoke_len / 4) + (48 / 2), 0, -3.6]) triangle_void(); - } - } - for (i = [0 : SPOKE_COUNT * 2]) { - rotate([0, 0, (i + 0.5) * (360 / (SPOKE_COUNT * 2)) ]) { - translate([(outer_d / 2) - (spoke_2_len / 2) + 1 , 0, -3.6]) triangle_void_2(i); - } - } - } - } - } - */ translate([0, 0, -.1]) { rotate([0, 0, -90]) { film_guide2(spiral_count); diff --git a/scad/libraries/gnal_v2.scad b/scad/libraries/gnal_v2.scad index 67897f0..f16f501 100644 --- a/scad/libraries/gnal_v2.scad +++ b/scad/libraries/gnal_v2.scad @@ -306,13 +306,14 @@ module gnal_spacer_16 () { /** * Spokes **/ - + module triangle_void () { - length = (81 / 2) - 9; + length = (81 / 2) - 9 + 10; width = 12; height = 4.5 + 2.7; ANGLE_A = 34.8; ANGLE_B = 180 / SPOKE_COUNT; + ANGLE_C = 20; difference () { translate([-1, 0, 0]) cube([length, width, height], center = true); translate([0, 10.3, 0]) rotate([0, 0, ANGLE_B]) cube([length * 2, width, height + 1], center = true); @@ -320,40 +321,57 @@ module triangle_void () { translate([0, 10.3, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); translate([0, -10.3, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); + + translate([(length / 2) + 2, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); } + } -module triangle_void_2 () { - length = 43 - 8; +module triangle_void_2 (i) { + length = 43 - 8 + 12; width = 12; height = 4.5 + 2.7; ANGLE_A = 34.8; ANGLE_B = 90 / SPOKE_COUNT; + ANGLE_C = 20; angle_w = 10.2; + difference () { - translate([-1, 0, 0]) cube([length, width, height], center = true); + translate([-3, 0, 0]) cube([length, width, height], center = true); translate([0, angle_w, 0]) rotate([0, 0, ANGLE_B]) cube([length *2, width, height * 10], center = true); translate([0, -angle_w, 0]) rotate([0, 0, -ANGLE_B]) cube([length *2, width, height * 10], center = true); translate([0, angle_w, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); translate([0, -angle_w, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); + if (i % 2 == 0) { + translate([-(length / 2) - 5, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); + } else { + translate([-(length / 2) - 7, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); + } + translate([(length / 2) + 1, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true);; } } -module triangle_void_3 () { - length = 32; +module triangle_void_3 (i) { + length = 32 + 10; width = 10; height = 4.5 + 2.7; ANGLE_A = 31; ANGLE_B = 45 / SPOKE_COUNT; + ANGLE_C = 20; angle_w = 7.8; difference () { - translate([-1, 0, 0]) cube([length, width, height], center = true); + translate([-3, 0, 0]) cube([length, width, height], center = true); translate([0, angle_w, 0]) rotate([0, 0, ANGLE_B]) cube([length *2, width, height * 10], center = true); translate([0, -angle_w, 0]) rotate([0, 0, -ANGLE_B]) cube([length *2, width, height * 10], center = true); translate([0, angle_w, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); translate([0, -angle_w, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); + if (i % 2 == 0) { + translate([-(length / 2) - 7, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true); + } else { + translate([-(length / 2) - 5, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true); + } } } diff --git a/scad/libraries/gnal_v3.scad b/scad/libraries/gnal_v3.scad index d2353ef..2c7227e 100644 --- a/scad/libraries/gnal_v3.scad +++ b/scad/libraries/gnal_v3.scad @@ -359,78 +359,6 @@ module gnal_spacer_16 () { } } -/** - * Spokes - **/ - -module triangle_void () { - length = (81 / 2) - 9 + 10; - width = 12; - height = 4.5 + 2.7; - ANGLE_A = 34.8; - ANGLE_B = 180 / SPOKE_COUNT; - ANGLE_C = 20; - difference () { - translate([-1, 0, 0]) cube([length, width, height], center = true); - translate([0, 10.3, 0]) rotate([0, 0, ANGLE_B]) cube([length * 2, width, height + 1], center = true); - translate([0, -10.3, 0]) rotate([0, 0, -ANGLE_B]) cube([length * 2, width, height + 1], center = true); - - translate([0, 10.3, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - translate([0, -10.3, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - - translate([(length / 2) + 2, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); - } - -} - -module triangle_void_2 (i) { - length = 43 - 8 + 12; - width = 12; - height = 4.5 + 2.7; - ANGLE_A = 34.8; - ANGLE_B = 90 / SPOKE_COUNT; - ANGLE_C = 20; - angle_w = 10.2; - - difference () { - translate([-3, 0, 0]) cube([length, width, height], center = true); - translate([0, angle_w, 0]) rotate([0, 0, ANGLE_B]) cube([length *2, width, height * 10], center = true); - translate([0, -angle_w, 0]) rotate([0, 0, -ANGLE_B]) cube([length *2, width, height * 10], center = true); - - translate([0, angle_w, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - translate([0, -angle_w, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - if (i % 2 == 0) { - translate([-(length / 2) - 5, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); - } else { - translate([-(length / 2) - 7, 0, 0]) rotate([0, 0, ANGLE_C]) cube([10, width * 2, height + 1], center = true); - } - translate([(length / 2) + 1, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true);; - } -} - -module triangle_void_3 (i) { - length = 32 + 10; - width = 10; - height = 4.5 + 2.7; - ANGLE_A = 31; - ANGLE_B = 45 / SPOKE_COUNT; - ANGLE_C = 20; - angle_w = 7.8; - difference () { - translate([-3, 0, 0]) cube([length, width, height], center = true); - translate([0, angle_w, 0]) rotate([0, 0, ANGLE_B]) cube([length *2, width, height * 10], center = true); - translate([0, -angle_w, 0]) rotate([0, 0, -ANGLE_B]) cube([length *2, width, height * 10], center = true); - - translate([0, angle_w, -.7]) rotate([ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - translate([0, -angle_w, -.7]) rotate([-ANGLE_A, 0, 0]) cube([length *2, width, height * 10], center = true); - if (i % 2 == 0) { - translate([-(length / 2) - 7, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true); - } else { - translate([-(length / 2) - 5, 0, 0]) rotate([0, 0, -ANGLE_C]) cube([10, width * 2, height + 1], center = true); - } - } -} - /** * Spindles **/