// -*- C -*- letterheight = 25; linewidth = 3.5; letterthick = 2.5; kdiag = 1; kprop = 0.50; module kay_leg (transamount, llen, mir) { translate([0,transamount,0]) mirror([0,mir,0]) translate([0,-0.1,0]) multmatrix([[1,kdiag,0,0], [0,1,0,0], [0,0,1,0], [0,0,0,1]]) cube([linewidth * sqrt(1 + kdiag*kdiag), llen + 0.1, letterthick]); } module kay () { translate([0.1,0,0]) cube([linewidth, letterheight, letterthick]); kay_leg(letterheight*kprop, letterheight*(1-kprop), 0); kay_leg(letterheight*kprop, letterheight*kprop, 1); } kay();