From: Ian Jackson Date: Sat, 15 Sep 2012 21:42:26 +0000 (+0100) Subject: filamentspool wip X-Git-Tag: filamentspool-v2-release~862 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=commitdiff_plain;h=3dccb41a1fc9eb875f939d76fdba1f0cbc1f7f71;hp=9ffb15b0eaf47f02691e9166c08f453f3cefea10 filamentspool wip --- diff --git a/filamentspool.scad b/filamentspool.scad index 94a0150..8dbf1bf 100644 --- a/filamentspool.scad +++ b/filamentspool.scad @@ -12,6 +12,8 @@ ratchettoothslope=0.75; overlap=0.5; cupbigrad=35; +prongstalkxwidth=3; + stalklength=40; overclipcupgap=5; overclipheight=15; @@ -28,6 +30,7 @@ channelwidth = prongthick + slop; channeldepth = prongwidth + ratchettoothheight; totalwidth = armendwallthick*2 + channelwidth; totalheight = channeldepth + armendbasethick; +stalkwidth = prongwidth + prongstalkxwidth; doveclipheight = totalheight; @@ -60,10 +63,10 @@ module ArmEnd(length=120){ module FilamentCupHandle(){ pawlusewidth = ratchetpawl-ratchettoothsmoothr*2; mirror([0,1,0]) { - cube([stalklength, prongwidth, prongthick]); - translate([stalklength, prongwidth/2, 0]) - cylinder(r=prongwidth/2, h=prongthick, $fn=20); - translate([ratchettoothsmoothr, prongwidth, 0]) { + cube([stalklength, stalkwidth, prongthick]); + translate([stalklength, stalkwidth/2, 0]) + cylinder(r=stalkwidth/2, h=prongthick, $fn=20); + translate([ratchettoothsmoothr, stalkwidth, 0]) { minkowski(){ cylinder($fn=20,r=ratchettoothsmoothr, h=1); multmatrix([ [ 1, -ratchettoothslope, 0, 0 ], @@ -100,14 +103,15 @@ module FilamentCup() { translate([0, -1, 0]); cube([prongwidth, dy+1, prongthick]); + midrad = cupbigrad + prongwidth/2; + propshift = stalklength - overclipheight - prongthick; - proptaken = propshift + prongthick; - echo(cupbigrad, dx, propshift, proptaken); + proptaken = propshift; + echo(cupbigrad, dx, midrad, propshift, proptaken); translate([propshift, -1, 0]) cube([prongwidth, - sqrt(cupbigrad*cupbigrad - proptaken*proptaken) - + overclipcupgap + prongthick + 1, + dy - sqrt(midrad*midrad - proptaken*proptaken), prongthick]); }