+ polygon([[ -top_middle_dr, middle_bot_z ],
+ [ -top_middle_dr, top_z ],
+ [ main_cnr_pos[0], top_z ],
+ [ side_thick, main_cnr_pos[1] ],
+ [ side_thick, -side_height ],
+ [ side_taper, -side_height ],
+ [ 0, -rivet_posn ],
+ [ 0, by_oring_z ],
+ [ -oring_x_rad, by_oring_z ],
+ ],
+ convexity=10);
+ }
+ translate([ oring_mid_dia/2 - main_dia/2, 0 ])
+ hull(){
+ translate([ 0, oring_y_rad ])
+ scale([ 1/oring_oblate, oring_oblate ])
+ circle(oring_thick/2);
+ translate([ 0, oring_y_rad*2 - oring_thick/2 ])
+ circle(oring_thick/2);