More work on gate and updated BOM

This commit is contained in:
Matt McWilliams 2024-11-07 12:47:31 -05:00
parent 2866eaa2ef
commit 9a526eac71
10 changed files with 75213 additions and 54987 deletions

View File

@ -8,5 +8,6 @@ body,2,M2.5 hex cap bolt 25mm,N/A,Attach filter_holder to gate
body,6,M2.5 hex cap bolt 15mm,N/A,Attach idle_roller to gate body,6,M2.5 hex cap bolt 15mm,N/A,Attach idle_roller to gate
body,2,M5 hex nut,N/A,Attach front_block to gate body,2,M5 hex nut,N/A,Attach front_block to gate
body,2,M5 hex cap bolt 20mm,N/A,Attach gate to projector body,2,M5 hex cap bolt 20mm,N/A,Attach gate to projector
back_plate,1,M2.5 hex nut,N/A,Join the back_plate to the front_plate sprocketed_roller_nut_16mm,s,,,
front_plate,1,M2.5 hex cap bolt 10mm,N/A,Join the front_plate to the back_plate back_plate,1,M2.5 hex cap bolt 10mm,N/A,Join the front_plate to the back_plate
front_plate,1,M2.5 hex nut,N/A,Join the front_plate to the back_plate

1 module quantity part part_id description
8 body 6 M2.5 hex cap bolt 15mm N/A Attach idle_roller to gate
9 body 2 M5 hex nut N/A Attach front_block to gate
10 body 2 M5 hex cap bolt 20mm N/A Attach gate to projector
11 back_plate sprocketed_roller_nut_16mm 1 s M2.5 hex nut N/A Join the back_plate to the front_plate
12 front_plate back_plate 1 M2.5 hex cap bolt 10mm N/A Join the front_plate to the back_plate
13 front_plate 1 M2.5 hex nut N/A Join the front_plate to the back_plate

View File

@ -8,4 +8,5 @@ quantity,part_id,part,price
2,"M2.5 hex cap bolt 25mm",N/A,0 2,"M2.5 hex cap bolt 25mm",N/A,0
6,"M2.5 hex cap bolt 15mm",N/A,0 6,"M2.5 hex cap bolt 15mm",N/A,0
5,"M2.5 hex cap bolt 10mm",N/A,0 5,"M2.5 hex cap bolt 10mm",N/A,0
36,N/A,TOTALS,6 0.0,"","",0.0
36.0,N/A,TOTALS,6.0

1 quantity part_id part price
8 2 M2.5 hex cap bolt 25mm N/A 0
9 6 M2.5 hex cap bolt 15mm N/A 0
10 5 M2.5 hex cap bolt 10mm N/A 0
11 36 0.0 N/A TOTALS 6 0.0
12 36.0 N/A TOTALS 6.0

View File

@ -1,2 +1,3 @@
part,part_id,price,url part,part_id,price,url
M3 hex nut,N/A,3,https://www.amazon.com/ZQZ-M3-0-5mm-Stainless-Hardware-Standard/dp/B0CQJK2R5T/ref=asc_df_B0CQJK2R5T/ M3 hex nut,N/A,3,https://amzn.to/4hAnwjc
M3 hex cap bolt 12mm,N/A,9,https://amzn.to/48CGa5Y
1 part part_id price url
2 M3 hex nut N/A 3 https://www.amazon.com/ZQZ-M3-0-5mm-Stainless-Hardware-Standard/dp/B0CQJK2R5T/ref=asc_df_B0CQJK2R5T/ https://amzn.to/4hAnwjc
3 M3 hex cap bolt 12mm N/A 9 https://amzn.to/48CGa5Y

View File

@ -104,15 +104,17 @@ module bearing_debug (pos = [0, 0, 0], rot = [0, 0, 0]) {
} }
} }
module perf_void (pos = [0, 0, 0]) { module perf_void (pos = [0, 0, 0], Pad = 0) {
translate(pos) cube([2.5, 1.99, 10], center = true); translate(pos) {
cube([2.5 + Pad, 1.99 + Pad, 10], center = true);
}
} }
module perfs_void () { module perfs_void (Pad = 0) {
perf_void([PerfSpacingX / 2, PerfSpacingY / 2 + Standard16OffsetY, 0]); perf_void([PerfSpacingX / 2, (PerfSpacingY / 2) + Standard16OffsetY, 0], Pad);
perf_void([-PerfSpacingX / 2, PerfSpacingY / 2 + Standard16OffsetY, 0]); perf_void([-PerfSpacingX / 2, (PerfSpacingY / 2) + Standard16OffsetY, 0], Pad);
perf_void([PerfSpacingX / 2, -PerfSpacingY / 2 + Standard16OffsetY, 0]); perf_void([PerfSpacingX / 2, -(PerfSpacingY / 2) + Standard16OffsetY, 0], Pad);
perf_void([-PerfSpacingX / 2, -PerfSpacingY / 2 + Standard16OffsetY, 0]); perf_void([-PerfSpacingX / 2, -(PerfSpacingY / 2) + Standard16OffsetY, 0], Pad);
} }
module front_plate_void (pos = [0, 0, 0]) { module front_plate_void (pos = [0, 0, 0]) {
@ -122,11 +124,11 @@ module front_plate_void (pos = [0, 0, 0]) {
//film Clearance //film Clearance
film_clearance_void([0, 0, -1]); film_clearance_void([0, 0, -1]);
//perfs //perfs
perfs_void(); perfs_void(Pad = 0.25);
} }
} }
//BOM: 1, M2.5 hex cap bolt 10mm, N/A, Join the front_plate to the back_plate //BOM: 1, M2.5 hex nut, N/A, Join the front_plate to the back_plate
module front_plate () { module front_plate () {
difference () { difference () {
union () { union () {
@ -299,7 +301,7 @@ module back_plate_void (pos = [0, 0, 0]) {
} }
} }
//BOM: 1, M2.5 hex nut, N/A, Join the back_plate to the front_plate //BOM: 1, M2.5 hex cap bolt 10mm, N/A, Join the front_plate to the back_plate
module back_plate () { module back_plate () {
RodZ = 4; RodZ = 4;
ExtraPlateZ = 1; ExtraPlateZ = 1;
@ -326,13 +328,35 @@ module back_plate () {
translate([(-PlateX / 2) + AlignmentX, -AlignmentSpacingY / 2, RodZ / 2]) cylinder(r = R(AlignmentD), h = RodZ, center = true , $fn = 30); translate([(-PlateX / 2) + AlignmentX, -AlignmentSpacingY / 2, RodZ / 2]) cylinder(r = R(AlignmentD), h = RodZ, center = true , $fn = 30);
} }
module sprocketed_roller_16mm (pos = [0, 0, 0], rot = [0, 0, 0]) { module sprocketed_roller_text (pos = [0, 0, 0], rot = [0, 0, 0], font_size = 3, radius = 6, chars = "", h = 1) {
PI = 3.14159;
circumference = 2 * PI * radius;
chars_len = len(chars);
step_angle = 30;
echo("Chars", step_angle);
translate(pos) rotate(rot) {
for (i = [0 : chars_len - 1]) {
rotate(-i * step_angle) {
translate([0, radius + font_size / 2, 0]) {
linear_extrude(height = h) {
text(chars[i], font = "Courier New; Style = Bold", size = font_size, valign = "center", halign = "center");
}
}
}
}
}
}
module sprocketed_roller_16mm (pos = [0, 0, 0], rot = [0, 0, 0], side = "TOP") {
$fn = 160; $fn = 160;
TaperD = 19.05; TaperD = 19.05;
TaperH = 5; TaperH = 5;
translate(pos) rotate(rot) difference() { RotateSprocketZ = side == "TOP" ? 7 : -16;
TopChars = side == "TOP" ? "TAKEUP" : "FEED";
translate(pos) rotate(rot) {
difference() {
union () { union () {
sprocketed_roller(bevel = true); rotate([0, 0, RotateSprocketZ]) sprocketed_roller(bevel = true);
translate([0, 0, 3.85]) cylinder(r1 = R(TaperD), r2 = R(TaperD - TaperH), h = TaperH, center = true); translate([0, 0, 3.85]) cylinder(r1 = R(TaperD), r2 = R(TaperD - TaperH), h = TaperH, center = true);
//touches bearing //touches bearing
translate([0, 0, 0.3]) cylinder(r = R(11), h = 9.5, center = true, $fn = 60); translate([0, 0, 0.3]) cylinder(r = R(11), h = 9.5, center = true, $fn = 60);
@ -340,7 +364,7 @@ module sprocketed_roller_16mm (pos = [0, 0, 0], rot = [0, 0, 0]) {
translate([0, 0, -21.15]) cylinder(r = R(6), h = 10, center = true); translate([0, 0, -21.15]) cylinder(r = R(6), h = 10, center = true);
} }
//registration mark //registration mark
translate([0, 20, 16.1]) rotate([0, 45, 0]) cube([1, 40, 1], center = true); translate([-20, 0, 16.15]) rotate([45, 0, 0]) cube([40, 1, 1], center = true);
translate([0, 0, 15.9]) cylinder(r = R(2.5), h = 1, center = true, $fn = 30); translate([0, 0, 15.9]) cylinder(r = R(2.5), h = 1, center = true, $fn = 30);
//pressure relief hole //pressure relief hole
cylinder(r = R(1.5), h = 50, center = true, $fn = 30); cylinder(r = R(1.5), h = 50, center = true, $fn = 30);
@ -349,9 +373,14 @@ module sprocketed_roller_16mm (pos = [0, 0, 0], rot = [0, 0, 0]) {
translate([(-15 / 2) - (6 / 2) + 0.2, 0, -31]) cube([15, 15, 40], center = true); translate([(-15 / 2) - (6 / 2) + 0.2, 0, -31]) cube([15, 15, 40], center = true);
//m2.5 bolt //m2.5 bolt
translate([0, 0, -15.85]) rotate([0, 90, 0]) cylinder(r = R(2.75), h = 30, center = true, $fn = 30); translate([0, 0, -15.85]) rotate([0, 90, 0]) cylinder(r = R(2.75), h = 30, center = true, $fn = 30);
//
sprocketed_roller_text([0, 0, 16], chars=TopChars);
}
} }
} }
//BOM: s
module sprocketed_roller_nut_16mm (pos = [0, 0, 0], rot = [0, 0, 0]) { module sprocketed_roller_nut_16mm (pos = [0, 0, 0], rot = [0, 0, 0]) {
$fn = 80; $fn = 80;
translate(pos) rotate(rot) difference() { translate(pos) rotate(rot) difference() {
@ -655,7 +684,7 @@ module front_block (pos = [0, 0, 0], rot = [0, 0, 0]) {
//for pegs //for pegs
translate([10.25, 0, -1.75]) { translate([10.25, 0, -1.75]) {
rounded_cube([12.4, 30.4, 4], d = 3, center = true, $fn = 30); translate([-3, 0, 0]) rounded_cube([16.4, 31.4, 4], d = 3, center = true, $fn = 30);
translate([-3, 12, -2]) { translate([-3, 12, -2]) {
cylinder(r = R(2.75), h = 20, center = true, $fn = 40); cylinder(r = R(2.75), h = 20, center = true, $fn = 40);
translate([0, 0, 7.51]) m2_5_nut(4); translate([0, 0, 7.51]) m2_5_nut(4);
@ -670,13 +699,15 @@ module front_block (pos = [0, 0, 0], rot = [0, 0, 0]) {
} }
module front_block_peg (pos = [0, 0, 0], rot = [0, 0, 0], h = 10) { module front_block_peg (pos = [0, 0, 0], rot = [0, 0, 0], h = 10) {
BaseX = 1.4;
translate(pos) rotate(rot) { translate(pos) rotate(rot) {
translate([0, 0, h / 4]) cube([2.1, 1.5, h / 2], center = true);
difference () { difference () {
cube([2, 1.75, h], center = true); cube([1.6, 1.3, h], center = true);
translate([1.6, 0, -h / 2]) rotate([0, 30, 0]) cube([2, 1.75 + 1, h], center = true); translate([1.2, 0, -h / 2]) rotate([0, 10, 0]) cube([2, 1.75 + 1, h], center = true);
translate([-1.6, 0, -h / 2]) rotate([0, -30, 0]) cube([2, 1.75 + 1, h], center = true); translate([-1.2, 0, -h / 2]) rotate([0, -10, 0]) cube([2, 1.75 + 1, h], center = true);
translate([0, -1.25, -h / 2]) rotate([10, 0, 0]) cube([2 + 1, 1.75, h], center = true); translate([0, -1.05, -h / 2]) rotate([10, 0, 0]) cube([2 + 1, 1.75, h], center = true);
translate([0, 1.25, -h / 2]) rotate([-10, 0, 0]) cube([2 + 1, 1.75, h], center = true); translate([0, 1.05, -h / 2]) rotate([-10, 0, 0]) cube([2 + 1, 1.75, h], center = true);
} }
} }
@ -688,7 +719,7 @@ module front_block_pegs (pos = [0, 0, 0], rot = [0, 0, 0]) {
BoltSpacingY = 24; BoltSpacingY = 24;
translate(pos) rotate(rot) { translate(pos) rotate(rot) {
difference () { difference () {
rounded_cube([12, 30, 3], d = 3, center = true, $fn = 30); translate([-3, 0, 0]) rounded_cube([16, 31, 3], d = 3, center = true, $fn = 30);
translate([-6, 0, 0]) cylinder(r = R(8), h = 3 + 1, center = true, $fn = 40); translate([-6, 0, 0]) cylinder(r = R(8), h = 3 + 1, center = true, $fn = 40);
translate([6, 0, 0]) rounded_cube([12, 16, 3 + 1], d = 3, center = true, $fn = 30); translate([6, 0, 0]) rounded_cube([12, 16, 3 + 1], d = 3, center = true, $fn = 30);
@ -698,8 +729,8 @@ module front_block_pegs (pos = [0, 0, 0], rot = [0, 0, 0]) {
translate([-3, BoltSpacingY / 2, -4.5]) cylinder(r = R(5), h = 10, center = true, $fn = 40); translate([-3, BoltSpacingY / 2, -4.5]) cylinder(r = R(5), h = 10, center = true, $fn = 40);
translate([-3, -BoltSpacingY / 2, -4.5]) cylinder(r = R(5), h = 10, center = true, $fn = 40); translate([-3, -BoltSpacingY / 2, -4.5]) cylinder(r = R(5), h = 10, center = true, $fn = 40);
} }
front_block_peg([2, PegSpacingY / 2, -6 / 2], h = 7); front_block_peg([1.75, (PerfSpacingY / 2) + Standard16OffsetY, -6 / 2], h = 7);
front_block_peg([2, -PegSpacingY / 2, -6 / 2], h = 7); front_block_peg([1.75, (-PerfSpacingY / 2) + Standard16OffsetY, -6 / 2], h = 7);
} }
} }
@ -734,21 +765,23 @@ module debug () {
difference () { difference () {
union () { union () {
FilmZ = -3.5 ; // - 4.2; //retraction distance FilmZ = -3.5 ; // - 4.2; //retraction distance
//translate([(-BodyX / 2) - 1, 0, -BodyZ / 2]) body(gauge = "16mm");
translate([0, 0, FilmZ + 1.4]) front_plate(); translate([0, 0, FilmZ + 1.4]) front_plate();
translate([0, 0, FilmZ - 1.4]) back_plate(); translate([0, 0, FilmZ - 1.4]) back_plate();
gate_mask_slide_standard16([(PlateX / 2) - (FrontPlateVoidX / 2) - 1.9, 0, FilmZ - 1.4]); gate_mask_slide_standard16([(PlateX / 2) - (FrontPlateVoidX / 2) - 1.9, 0, FilmZ - 1.4]);
//gate_mask_slide_super16([(PlateX / 2) - (FrontPlateVoidX / 2) - 2.41, 0, -3]); //gate_mask_slide_super16([(PlateX / 2) - (FrontPlateVoidX / 2) - 2.41, 0, -3]);
//front_plate_void([(PlateX / 2) - (FrontPlateVoidX / 2) - 2.41, 0, 0]); //front_plate_void([(PlateX / 2) - (FrontPlateVoidX / 2) - 2.41, 0, 0]);
//film_clearance_void([0, 0, 15]); //film_clearance_void([0, 0, 15]);
color("blue") translate([8, 4.7, FilmZ]) 16mm_film(18, true, true); color("blue") translate([8, 4.6, FilmZ]) 16mm_film(18, true, true);
//sprocketed_roller_16mm([1.5, KeySpacingY / 2, KeyZ], [0, 90, 0]); sprocketed_roller_16mm([1.5, KeySpacingY / 2, KeyZ], [0, 90, 0], side = "TOP");
//sprocketed_roller_16mm([1.5, -KeySpacingY / 2, KeyZ], [0, 90, 0]); sprocketed_roller_16mm([1.5, -KeySpacingY / 2, KeyZ], [0, 90, 0], side = "BOTTOM");
//bearing_debug([-6.8, KeySpacingY / 2, KeyZ], [0, 90, 0]); //bearing_debug([-6.8, KeySpacingY / 2, KeyZ], [0, 90, 0]);
//bearing_debug([-6.8, -KeySpacingY / 2, KeyZ], [0, 90, 0]); //bearing_debug([-6.8, -KeySpacingY / 2, KeyZ], [0, 90, 0]);
color("blue") sprocketed_roller_nut_16mm([-8.5, -KeySpacingY / 2, KeyZ], [0, 90, 0]); color("blue") sprocketed_roller_nut_16mm([-8.5, -KeySpacingY / 2, KeyZ], [0, 90, 0]);
translate([(-BodyX / 2) - 1, 0, -BodyZ / 2]) body(gauge = "16mm");
/*idle_roller_16mm([9, IdleRollerSpacingAY / 2, (BodyZ / 2) - IdleRollerAZ - (BodyZ / 2)], [0, 90, 0]); /*idle_roller_16mm([9, IdleRollerSpacingAY / 2, (BodyZ / 2) - IdleRollerAZ - (BodyZ / 2)], [0, 90, 0]);
idle_roller_post_16mm([9, IdleRollerSpacingAY / 2, (BodyZ / 2) - IdleRollerAZ - (BodyZ / 2)], [0, 90, 0]); idle_roller_post_16mm([9, IdleRollerSpacingAY / 2, (BodyZ / 2) - IdleRollerAZ - (BodyZ / 2)], [0, 90, 0]);
@ -766,7 +799,7 @@ module debug () {
slide_catch([-13, 34, -51.5]); slide_catch([-13, 34, -51.5]);
front_block([(-BodyX / 2) - 1, 0, (6.5 / 2) + 15]); front_block([(-BodyX / 2) - 1, 0, (6.5 / 2) + 15]);
color("yellow") front_block_pegs([0, 0, 16.75]); color("yellow") front_block_pegs([0, 0, 1.5]);
//front_block_film_path([(17 / 2) - 1, (58.5 / 2) + (13 / 2), -2.25]); //front_block_film_path([(17 / 2) - 1, (58.5 / 2) + (13 / 2), -2.25]);
//front_block_film_path([(17 / 2) - 1, (-58.5 / 2) - (13 / 2), -2.25 ], [0, 0, 180]); //front_block_film_path([(17 / 2) - 1, (-58.5 / 2) - (13 / 2), -2.25 ], [0, 0, 180]);
@ -777,45 +810,61 @@ module debug () {
} }
} }
PART="front_block_pegsx"; PART="front_block_16mm";
if (PART == "front_plate") { if (PART == "front_plate") {
//1
rotate([0, 180, 0]) front_plate(); rotate([0, 180, 0]) front_plate();
} else if (PART == "back_plate") { } else if (PART == "back_plate") {
//1
back_plate(); back_plate();
} else if (PART == "mask_slide") {
gate_mask_slide();
} else if (PART == "mask_slide_standard16") { } else if (PART == "mask_slide_standard16") {
//1
rotate([180, 0, 0]) gate_mask_slide_standard16(); rotate([180, 0, 0]) gate_mask_slide_standard16();
} else if (PART == "mask_slide_super16") { } else if (PART == "mask_slide_super16") {
//1
rotate([180, 0, 0]) gate_mask_slide_super16(); rotate([180, 0, 0]) gate_mask_slide_super16();
} else if (PART == "sprocketed_roller_16mm") { } else if (PART == "sprocketed_roller_16mm") {
//1
rotate([180, 0, 0]) sprocketed_roller_16mm(); rotate([180, 0, 0]) sprocketed_roller_16mm();
} else if (PART == "sprocketed_roller_nut_16mm") { } else if (PART == "sprocketed_roller_nut_16mm") {
//2
sprocketed_roller_nut_16mm(); sprocketed_roller_nut_16mm();
} else if (PART == "idle_roller_16mm") { } else if (PART == "idle_roller_16mm") {
//6
idle_roller_16mm(); idle_roller_16mm();
} else if (PART == "idle_roller_post_16mm") { } else if (PART == "idle_roller_post_16mm") {
//6
idle_roller_post_16mm(); idle_roller_post_16mm();
} else if (PART == "slide") { } else if (PART == "slide") {
//1
slide(); slide();
} else if (PART == "slide_catch") { } else if (PART == "slide_catch") {
//1
slide_catch(); slide_catch();
} else if (PART == "slide_rail_a") { } else if (PART == "slide_rail_a") {
//1
slide_rail(side = "A"); slide_rail(side = "A");
} else if (PART == "slide_rail_b"){ } else if (PART == "slide_rail_b"){
//1
slide_rail(side = "B"); slide_rail(side = "B");
} else if (PART == "filter_block_a") { } else if (PART == "filter_block_a") {
//1
filter_block(side = "A"); filter_block(side = "A");
} else if (PART == "filter_block_b"){ } else if (PART == "filter_block_b"){
//1
filter_block(side = "B"); filter_block(side = "B");
} else if (PART == "body_16mm") { } else if (PART == "body_16mm") {
//1
rotate([0, 90, 0]) body(gauge = "16mm"); rotate([0, 90, 0]) body(gauge = "16mm");
} else if (PART == "front_block_16mm") { } else if (PART == "front_block_16mm") {
//1
rotate([180, 0, 0]) front_block(); rotate([180, 0, 0]) front_block();
} else if (PART == "front_block_film_path") { } else if (PART == "front_block_film_path") {
//2
front_block_film_path(rot = [0, 90, 0]); front_block_film_path(rot = [0, 90, 0]);
} else if (PART == "front_block_pegs") { } else if (PART == "front_block_pegs") {
//1
front_block_pegs(rot = [180, 0, 0]); front_block_pegs(rot = [180, 0, 0]);
} else { } else {
debug(); debug();

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1511,13 +1511,6 @@ solid OpenSCAD_Model
vertex 0 1.4692209 -10.391087 vertex 0 1.4692209 -10.391087
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.0277282 -10.972272
vertex 0 1.4692209 -10.391087
vertex 0 1.3776412 -10.772543
endloop
endfacet
facet normal 0 -0.7604062 0.6494478 facet normal 0 -0.7604062 0.6494478
outer loop outer loop
vertex 0 -0.0277282 -10.972272 vertex 0 -0.0277282 -10.972272
@ -1560,13 +1553,6 @@ solid OpenSCAD_Model
vertex 0 1.4692209 13.608913 vertex 0 1.4692209 13.608913
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.0277282 13.027728
vertex 0 1.4692209 13.608913
vertex 0 1.3776412 13.227457
endloop
endfacet
facet normal 0 -0.7604062 0.6494478 facet normal 0 -0.7604062 0.6494478
outer loop outer loop
vertex 0 -0.0277282 13.027728 vertex 0 -0.0277282 13.027728
@ -1606,14 +1592,14 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.19179535 -11.112398 vertex 0 -0.19179535 -11.112398
vertex 0 -0.0277282 -10.972272 vertex 0 -0.0277282 -10.972272
vertex 0 1.3776412 -10.772543 vertex 0 1.4692209 -10.391087
endloop endloop
endfacet endfacet
facet normal -1 0 0 facet normal -1 0 0
outer loop outer loop
vertex 0 -0.19179535 -11.112398 vertex 0 -0.19179535 -11.112398
vertex 0 1.4692209 -10.391087
vertex 0 1.3776412 -10.772543 vertex 0 1.3776412 -10.772543
vertex 0 1.2275164 -11.134976
endloop endloop
endfacet endfacet
facet normal 0 -0.6494471 0.7604068 facet normal 0 -0.6494471 0.7604068
@ -1655,14 +1641,14 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.19179535 12.887602 vertex 0 -0.19179535 12.887602
vertex 0 -0.0277282 13.027728 vertex 0 -0.0277282 13.027728
vertex 0 1.3776412 13.227457 vertex 0 1.4692209 13.608913
endloop endloop
endfacet endfacet
facet normal -1 0 0 facet normal -1 0 0
outer loop outer loop
vertex 0 -0.19179535 12.887602 vertex 0 -0.19179535 12.887602
vertex 0 1.4692209 13.608913
vertex 0 1.3776412 13.227457 vertex 0 1.3776412 13.227457
vertex 0 1.2275164 12.865024
endloop endloop
endfacet endfacet
facet normal 0 -0.6494471 0.7604068 facet normal 0 -0.6494471 0.7604068
@ -1704,6 +1690,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.37576306 -11.225134 vertex 0 -0.37576306 -11.225134
vertex 0 -0.19179535 -11.112398 vertex 0 -0.19179535 -11.112398
vertex 0 1.3776412 -10.772543
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.37576306 -11.225134
vertex 0 1.3776412 -10.772543
vertex 0 1.2275164 -11.134976 vertex 0 1.2275164 -11.134976
endloop endloop
endfacet endfacet
@ -1746,6 +1739,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.37576306 12.774866 vertex 0 -0.37576306 12.774866
vertex 0 -0.19179535 12.887602 vertex 0 -0.19179535 12.887602
vertex 0 1.3776412 13.227457
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.37576306 12.774866
vertex 0 1.3776412 13.227457
vertex 0 1.2275164 12.865024 vertex 0 1.2275164 12.865024
endloop endloop
endfacet endfacet
@ -1791,13 +1791,6 @@ solid OpenSCAD_Model
vertex 0 1.2275164 -11.134976 vertex 0 1.2275164 -11.134976
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.5751016 -11.307703
vertex 0 1.2275164 -11.134976
vertex 0 1.0225425 -11.469463
endloop
endfacet
facet normal 0 -0.38268498 0.9238789 facet normal 0 -0.38268498 0.9238789
outer loop outer loop
vertex 0 -0.5751016 -11.307703 vertex 0 -0.5751016 -11.307703
@ -1840,13 +1833,6 @@ solid OpenSCAD_Model
vertex 0 1.2275164 12.865024 vertex 0 1.2275164 12.865024
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.5751016 12.692297
vertex 0 1.2275164 12.865024
vertex 0 1.0225425 12.530537
endloop
endfacet
facet normal 0 -0.38268498 0.9238789 facet normal 0 -0.38268498 0.9238789
outer loop outer loop
vertex 0 -0.5751016 12.692297 vertex 0 -0.5751016 12.692297
@ -1886,6 +1872,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.78490263 -11.358071 vertex 0 -0.78490263 -11.358071
vertex 0 -0.5751016 -11.307703 vertex 0 -0.5751016 -11.307703
vertex 0 1.2275164 -11.134976
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.78490263 -11.358071
vertex 0 1.2275164 -11.134976
vertex 0 1.0225425 -11.469463 vertex 0 1.0225425 -11.469463
endloop endloop
endfacet endfacet
@ -1928,6 +1921,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 -0.78490263 12.641929 vertex 0 -0.78490263 12.641929
vertex 0 -0.5751016 12.692297 vertex 0 -0.5751016 12.692297
vertex 0 1.2275164 12.865024
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 -0.78490263 12.641929
vertex 0 1.2275164 12.865024
vertex 0 1.0225425 12.530537 vertex 0 1.0225425 12.530537
endloop endloop
endfacet endfacet
@ -3853,6 +3853,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.112398386 -10.808205 vertex 0 0.112398386 -10.808205
vertex 0 0.22513402 -10.624237 vertex 0 0.22513402 -10.624237
vertex 0 1.5 -10
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.112398386 -10.808205
vertex 0 1.5 -10
vertex 0 1.4692209 -10.391087 vertex 0 1.4692209 -10.391087
endloop endloop
endfacet endfacet
@ -3895,6 +3902,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.112398386 13.191795 vertex 0 0.112398386 13.191795
vertex 0 0.22513402 13.375763 vertex 0 0.22513402 13.375763
vertex 0 1.5 14
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.112398386 13.191795
vertex 0 1.5 14
vertex 0 1.4692209 13.608913 vertex 0 1.4692209 13.608913
endloop endloop
endfacet endfacet
@ -3947,13 +3961,6 @@ solid OpenSCAD_Model
vertex 0 1.5 -10 vertex 0 1.5 -10
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.22513402 -10.624237
vertex 0 1.5 -10
vertex 0 1.4692209 -10.391087
endloop
endfacet
facet normal 0 -0.85263985 0.522499 facet normal 0 -0.85263985 0.522499
outer loop outer loop
vertex 0 0.22513402 -10.624237 vertex 0 0.22513402 -10.624237
@ -3979,13 +3986,6 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.22513402 -9.375763 vertex 0 0.22513402 -9.375763
vertex 0 1.0225425 -8.530537 vertex 0 1.0225425 -8.530537
vertex 0 1.2275164 -8.865024
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.22513402 -9.375763
vertex 0 1.2275164 -8.865024
vertex 0 0.30770266 -9.575102 vertex 0 0.30770266 -9.575102
endloop endloop
endfacet endfacet
@ -4010,13 +4010,6 @@ solid OpenSCAD_Model
vertex 0 1.5 14 vertex 0 1.5 14
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.22513402 13.375763
vertex 0 1.5 14
vertex 0 1.4692209 13.608913
endloop
endfacet
facet normal 0 -0.85263985 0.522499 facet normal 0 -0.85263985 0.522499
outer loop outer loop
vertex 0 0.22513402 13.375763 vertex 0 0.22513402 13.375763
@ -4042,13 +4035,6 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.22513402 14.624237 vertex 0 0.22513402 14.624237
vertex 0 1.0225425 15.469463 vertex 0 1.0225425 15.469463
vertex 0 1.2275164 15.134976
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.22513402 14.624237
vertex 0 1.2275164 15.134976
vertex 0 0.30770266 14.424898 vertex 0 0.30770266 14.424898
endloop endloop
endfacet endfacet
@ -4087,6 +4073,13 @@ solid OpenSCAD_Model
vertex 3.5 0.35807145 -9.784903 vertex 3.5 0.35807145 -9.784903
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.30770266 -9.575102
vertex 0 1.0225425 -8.530537
vertex 0 1.2275164 -8.865024
endloop
endfacet
facet normal -1 0 0 facet normal -1 0 0
outer loop outer loop
vertex 0 0.30770266 -9.575102 vertex 0 0.30770266 -9.575102
@ -4129,6 +4122,13 @@ solid OpenSCAD_Model
vertex 3.5 0.35807145 14.215097 vertex 3.5 0.35807145 14.215097
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.30770266 14.424898
vertex 0 1.0225425 15.469463
vertex 0 1.2275164 15.134976
endloop
endfacet
facet normal -1 0 0 facet normal -1 0 0
outer loop outer loop
vertex 0 0.30770266 14.424898 vertex 0 0.30770266 14.424898
@ -4147,6 +4147,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.35807145 -10.215097 vertex 0 0.35807145 -10.215097
vertex 0 0.375 -10 vertex 0 0.375 -10
vertex 0 1.3776412 -9.227457
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.35807145 -10.215097
vertex 0 1.3776412 -9.227457
vertex 0 1.4692209 -9.608913 vertex 0 1.4692209 -9.608913
endloop endloop
endfacet endfacet
@ -4189,6 +4196,13 @@ solid OpenSCAD_Model
outer loop outer loop
vertex 0 0.35807145 13.784903 vertex 0 0.35807145 13.784903
vertex 0 0.375 14 vertex 0 0.375 14
vertex 0 1.3776412 14.772543
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0 0.35807145 13.784903
vertex 0 1.3776412 14.772543
vertex 0 1.4692209 14.391087 vertex 0 1.4692209 14.391087
endloop endloop
endfacet endfacet
@ -4234,13 +4248,6 @@ solid OpenSCAD_Model
vertex 0 1.3776412 -9.227457 vertex 0 1.3776412 -9.227457
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.375 -10
vertex 0 1.3776412 -9.227457
vertex 0 1.4692209 -9.608913
endloop
endfacet
facet normal 0 -0.9969173 0.07845918 facet normal 0 -0.9969173 0.07845918
outer loop outer loop
vertex 0 0.375 -10 vertex 0 0.375 -10
@ -4255,13 +4262,6 @@ solid OpenSCAD_Model
vertex 0 1.3776412 14.772543 vertex 0 1.3776412 14.772543
endloop endloop
endfacet endfacet
facet normal -1 0 0
outer loop
vertex 0 0.375 14
vertex 0 1.3776412 14.772543
vertex 0 1.4692209 14.391087
endloop
endfacet
facet normal 0 -0.9969173 0.07845918 facet normal 0 -0.9969173 0.07845918
outer loop outer loop
vertex 0 0.375 14 vertex 0 0.375 14

File diff suppressed because it is too large Load Diff