From: Ian Jackson Date: Tue, 30 Dec 2014 22:37:41 +0000 (+0000) Subject: knifeblock: work X-Git-Tag: filamentspool-v2-release~277 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=commitdiff_plain;h=458597c6a6b486114042ee9830f9013e9dbdcb87 knifeblock: work --- diff --git a/knifeblock.scad b/knifeblock.scad index 31e3654..8f71dd7 100644 --- a/knifeblock.scad +++ b/knifeblock.scad @@ -7,21 +7,25 @@ handlelenbase = 60; handlelendelta = [-10, 0, 0]; locations = [-35, 0, 40]; bladew = 5; // 2.5 -maxhandledepth = 43.5; +maxhandledepth = 43.5 - 5; // other tuneables -side = 5; front = 5; -back = 5; +back = 8; height = 50; +minsidein = 3; +minsideout = 3; frontbackslop = 0.5; -screwbackdepth = 16; -screwdia = 3.6; -screwcsinkdia = 8.7; +screwbackdepth = 6.0 - 1.0; +screwdia = 4.0 + 0.5; +screwcsinkdia = 9.8 + 1.0; + +screwabove = 15; // computed +side = minsidein + screwcsinkdia + minsideout; totaldepth = front + maxhandledepth + back; module ImportTemplate(w,k,t) { @@ -58,6 +62,15 @@ module DoKnives(){ } } +module ScrewHole(){ + translate([0,-50,0]) + rotate([-90,0,0]) + cylinder(r=screwdia/2, h=150, $fn=40); + translate([0, totaldepth-front - screwbackdepth, 0]) + rotate([90,0,0]) + cylinder(r=screwcsinkdia/2, h=100, $fn=40); +} + module Block(){ minkx = locations[0] - widths[0] /2; maxkx = locations[nknives-1] + widths[nknives-1]/2; @@ -65,15 +78,21 @@ module Block(){ minx = minkx - side; maxx = maxkx + side; + sidemidx = minsideout + screwcsinkdia/2; + difference(){ hull() mirror([0,0,1]) { translate([minx, 0, 0]) cube([maxx-minx, totaldepth-front, height]); for (x=[minx + front/2, maxx - front/2]) translate([x, -front/2, 0]) - cylinder(r=side/2, h=height, $fn=30); + cylinder(r=front/2, h=height, $fn=30); + } + for (x=[minx + sidemidx, maxx - sidemidx]) { + translate([x, 0, -screwabove]) + ScrewHole(); } - #DoKnives(); + DoKnives(); } }