7 my $settings = <<'END';
9 main_dia = 71.2 + 0.50;
16 rivet_width = 4.15 + 1.0;
17 rivet_tall = 5.51 + 0.49;
24 bayo_interf_width = 2.0;
25 bayo_interf_slope = 0.75;
28 seal_recess = [ 2.0, 2.0 ]; // recess depth, recess height
36 side_height = rivet_posn + bayo_behind;
37 side_thick = rivet_tall + over_rivet_gap;
39 top_z = top_thick + seal_thick;
41 bayo_entry = bayo_behind / 3.0;
42 bayo_top_z = bayo_behind + rivet_thick + over_rivet_gap;
43 bayo_entry_ramp = bayo_entry + bayo_interf;
45 rivet_entry_width = rivet_width + side_rivet_gap;
52 bayo_polygon = [[ -bayo_entry -rivet_entry_width, -5 ],
53 [ -bayo_entry -rivet_entry_width, 0 ],
54 [ -rivet_entry_width, bayo_entry ],
55 // [ bayo_entry, bayo_top_z ]
56 [ -rivet_entry_width, bayo_top_z ],
57 [ bayo_entry + 2*bayo_interf/bayo_interf_slope + bayo_interf_width, bayo_behind ],
58 [ bayo_entry + bayo_interf/bayo_interf_slope + bayo_interf_width, bayo_behind + bayo_interf ],
59 [ bayo_entry + bayo_interf/bayo_interf_slope, bayo_behind + bayo_interf ],
60 [ bayo_entry, bayo_behind ],
61 [ 0, bayo_behind - bayo_entry ],
69 my $mainbody = <<'END';
72 main_cnr_pos = [ side_thick, top_z ] - [1,1]*main_cnr;
73 translate(main_cnr_pos){
77 circle(r = main_cnr * 0.5);
82 polygon([[ -1, seal_thick ],
84 [ main_cnr_pos[0], top_z ],
85 [ side_thick, main_cnr_pos[1] ],
86 [ side_thick, -side_height ],
87 [ side_taper, -side_height ],
89 [ 0, -(seal_recess[0] + seal_recess[1]) ],
90 [ seal_recess[0], -(seal_recess[0]) ],
91 [ seal_recess[0], seal_thick ],
95 translate([-20,0]) MainProfile();
97 polygon(bayo_polygon);
101 print $settings, $mainbody or die $!;