--- /dev/null
+// -*- C -*-
+
+main_dia = 71.2 + 0.50;
+top_thick = 4;
+
+main_cnr = 4.0;
+
+rivet_posn = 6.0;
+rivet_thick = 1.67;
+rivet_width = 4.15 + 1.0;
+rivet_tall = 5.51 + 0.49;
+
+over_rivet = 0.5;
+
+bayo_interf = 0.75;
+bayo_behind = 3.5;
+
+seal_thick = 0.1;
+seal_pocket = 2.0;
+
+side_taper = 1.0;
+
+// calculated
+
+side_height = rivet_posn + bayo_behind;
+side_thick = rivet_tall + over_rivet;
+
+top_z = top_thick + seal_thick;
+
+$fs=0.5;
+$fa=5;
+
+module MainProfile(){
+ main_cnr_pos = [ side_thick, top_z ] - [1,1]*main_cnr;
+ translate(main_cnr_pos){
+ intersection(){
+ difference(){
+ circle(r = main_cnr);
+ circle(r = main_cnr * 0.5);
+ }
+ square([10,10]);
+ }
+ }
+ %polygon([[ -1, seal_thick ],
+ [ -1, top_z ],
+ [ main_cnr_pos[0], top_z ],
+ [ side_thick, main_cnr_pos[1] ]]);
+}
+
+MainProfile();