X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=filamentspool.scad;h=9efb91a6bef0b9623b5f34d4a9cba0ade8b791c8;hb=79707f559fae378df10a0f2d01663c7f8481866f;hp=e26fbe41afb000c0da53b9b35b877b2b83249b78;hpb=1af29ee2b1e725a0863f042485ee9d7badcfacaf;p=reprap-play.git diff --git a/filamentspool.scad b/filamentspool.scad index e26fbe4..9efb91a 100644 --- a/filamentspool.scad +++ b/filamentspool.scad @@ -1,6 +1,6 @@ // -*- C -*- -fdia=1.75; +fdia=2.85; slop=0.5; bigslop=slop*2; @@ -18,16 +18,19 @@ axletowerfudgebend = 0; axleaxlefudgebend = 3; axlepadlen = 1.0; -prongthick=5; -prongwidth=5; +function selsz(sm,lg) = fdia < 2 ? sm : lg; +function usedove() = selsz(true,false); + +prongthick=selsz(5,7); +prongwidth=selsz(5,7); ratchetstep=15; ratchettooth=3; ratchettoothheight=5; ratchettoothsmoothr=1; ratchettoothslope=0.75; overlap=0.5; -cupwidth=40; -cupheight=55; +cupwidth=selsz(40,60); +cupheight=selsz(55,75); propxshift = 0; @@ -38,11 +41,11 @@ teethgapx=4+fdia; prongstalkxwidth=3; -stalklength=35; +stalklength=selsz(35,55); overclipcupgap=5; overclipdepth=15; overcliproundr=2.0; -overclipthick=0.5; +overclipthick=1.0; overclipcupnextgap=20; overclipsmaller=-2.5; @@ -85,9 +88,11 @@ totalheight = channeldepth + armendbasethick; stalkwidth = prongwidth + prongstalkxwidth; module ArmEnd(length=120){ ////toplevel - translate([ratchettoothsmoothr, channelwidth/2, -armendbasethick]) { - rotate([0,0,-90]) - DoveClipPairBase(h=doveclipheight); + if (usedove()) { + translate([ratchettoothsmoothr, channelwidth/2, -armendbasethick]) { + rotate([0,0,-90]) + DoveClipPairBase(h=doveclipheight); + } } difference(){ @@ -168,6 +173,11 @@ module FilamentCup() { ////toplevel rotate([0,0, 102 + fdia]) FilamentTeeth(fdia=fdia, h=teethh); } + for (x = [-0.3, -1.3]) { + translate([cupheight + overclipcupnextgap*x, dy+cupwidth/2 + prongthick, 0]) + rotate([0,0, 12 + fdia]) + FilamentTeeth(fdia=fdia, h=teethh); + } } module CupSecuringClipSolid(w,d,h1,h2){ @@ -194,6 +204,8 @@ module CupSecuringClip(){ ////toplevel CupSecuringClipSolidSmooth(xrad=overclipthick, xdepth=0); translate([-wingswidth/2, -wingsize/2, 0]) cube([wingswidth, wingsize, wingthick]); + translate([-wingsize/2, -wingswidth/2, 0]) + cube([wingsize, wingswidth, wingthick]); } translate([0,0,-0.1]) CupSecuringClipSolidSmooth(xrad=0, xdepth=0.2); @@ -363,8 +375,8 @@ module FilamentCupPair(){ ////toplevel //ArmEnd(); //FilamentCup(); -FilamentCupPair(); -//CupSecuringClip(); +//FilamentCupPair(); +CupSecuringClip(); //Hub(); //ArmExtender(); //Axle();