X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=keyring-kay.scad;h=9ebb34ad7faa16df290b1ef44b88cb1f3f95b794;hp=f5b4e771849777e8c685f695af731f064f2e66fd;hb=cd9506cd4f5fea2b670bf46cf45d937376e5e77f;hpb=d2099986b25a125b2b13db98c7da5a14f0a980d2 diff --git a/keyring-kay.scad b/keyring-kay.scad index f5b4e77..9ebb34a 100644 --- a/keyring-kay.scad +++ b/keyring-kay.scad @@ -14,6 +14,9 @@ kprop = 0.50; diaglinewidth = linewidth * sqrt(1 + kdiag*kdiag); +ringholerad = 2.5; +ringedgewidth = 3; + module kay_leg (transamount, llen, mir) { translate([0,transamount,0]) mirror([0,mir,0]) @@ -32,8 +35,25 @@ module kay () { kay_leg(letterheight*kprop, letterheight*kprop, 1); } -kay(); -translate([-xborder, -yborder, -(basethick-0.1)]) - cube([letterheight*kprop + diaglinewidth + xborder*2, - letterheight + yborder*2, - basethick]); +totalw = letterheight*kprop + diaglinewidth + xborder*2; +totalh = letterheight + yborder*2; +basez = -(basethick-0.1); + +module main () { + kay(); + translate([-xborder, -yborder, basez]) + cube([totalw, totalh, basethick]); +} + +module ring (rad, extra) { + translate([totalw/2 - xborder, totalh - yborder, basez-extra]) + cylinder(r=rad, h=basethick + extra*2, $fn=30); +} + +difference(){ + union() { + main(); + ring(ringholerad + ringedgewidth/2, 0); + } + ring(ringholerad, 1); +}