X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=filamentspool.scad;h=e26fbe41afb000c0da53b9b35b877b2b83249b78;hb=1af29ee2b1e725a0863f042485ee9d7badcfacaf;hp=34e2f823458e60c7341dc1753cd247a55ad2442b;hpb=49af160728289c80d178aac9e9c4b0ead4688070;p=reprap-play.git diff --git a/filamentspool.scad b/filamentspool.scad index 34e2f82..e26fbe4 100644 --- a/filamentspool.scad +++ b/filamentspool.scad @@ -26,9 +26,8 @@ ratchettoothheight=5; ratchettoothsmoothr=1; ratchettoothslope=0.75; overlap=0.5; -cupbigrad=20; - -xstraightmul = 1.75; +cupwidth=40; +cupheight=55; propxshift = 0; @@ -135,38 +134,33 @@ module FilamentCupHandle(){ } module FilamentCupCup(){ - xstraight = cupbigrad * xstraightmul; - linear_extrude(height=prongthick) { - FlatArc(0,0, cupbigrad,cupbigrad+prongwidth, 89,271, $fn=80); - } for (my=[0,1]) mirror([0,my,0]) { - translate([0,cupbigrad,0]) - cube([xstraight, prongwidth, prongthick]); + translate([0,cupwidth/2,0]) + cube([cupheight + prongwidth, prongwidth, prongthick]); } } module FilamentCup() { ////toplevel FilamentCupHandle(); - dx = cupbigrad + prongwidth; gapy = prongwidth; - dy = cupbigrad + gapy + overclipcupgap; + dy = cupwidth/2 + gapy + overclipcupgap; - translate([dx, dy, 0]) + translate([0, dy, 0]) FilamentCupCup(); translate([0, -1, 0]); - cube([prongwidth, dy+1, prongthick]); + cube([prongwidth, dy+1+cupwidth/2, prongthick]); - midrad = cupbigrad + prongwidth/2; + midrad = cupwidth/2 + prongwidth/2; propshift = stalklength - overclipdepth - prongthick + propxshift; proptaken = propshift; - echo(cupbigrad, dx, midrad, propshift, proptaken); + echo(midrad, propshift, proptaken); translate([propshift, -1, 0]) { // something is wrong with the y calculation cube([prongwidth, - dy - sqrt(midrad*midrad - proptaken*proptaken) - prongwidth/2, + gapy+2, prongthick]); } for (y = [overclipcupgap, overclipcupgap+overclipcupnextgap]) { @@ -359,8 +353,17 @@ module TowerExtender(){ ////toplevel pillarw = towerpillarw); } +module FilamentCupPair(){ ////toplevel + FilamentCup(); + translate([cupheight + prongthick*3, + cupwidth/2*1.7, + 0]) + rotate([0,0,180]) FilamentCup(); +} + //ArmEnd(); //FilamentCup(); +FilamentCupPair(); //CupSecuringClip(); //Hub(); //ArmExtender();