// -*- C -*- post_dia = 23.0; th = 4; nom_hole = 22; min_r = 15 + nom_hole/2; maj_r = 30 + nom_hole/2; //$fa=1; //$fs=1; module Profile(r) { polygon([ [0, 0], [maj_r, 0], [maj_r-th, th], [0, th] ]); } module Body(){ hull(){ for (x= [-1,+1] * (maj_r-min_r)) translate([x,0,0]) rotate_extrude() Profile(min_r); } } Body();