// -*- C -*- screwrad = 4.3 / 2 + 0.30; shaftrad = 7.5 / 2 - 0.30; diskrad = 12.0 / 2 - 0.25; csinkpart = 0.5; shaftlen = 4; diskthick = 1.5; disktaperratio = 2; // computed disktaperrad = diskrad - diskthick / disktaperratio; totallen = shaftlen + diskthick; echo(disktaperrad, screwheadrad); echo(diskrad, disktaperrad, shaftrad, screwheadrad, screwrad); module SidePlan(){ polygon([[-screwrad, 0], [-disktaperrad, 0], [-diskrad, -diskthick], [-shaftrad, -diskthick], [-shaftrad, -totallen], [-screwrad, -totallen]]); } SidePlan();