chiark / gitweb /
filamentspool: Square cup
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 13 Dec 2015 18:19:22 +0000 (18:19 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 13 Dec 2015 21:57:45 +0000 (21:57 +0000)
filamentspool.TODO
filamentspool.scad

index 704a01d..11784c5 100644 (file)
@@ -1,7 +1,6 @@
 todo list for filamentspool for taz-5
 
 cup should be thicker
-cup should be square
 cup should be bigger
 spool middle should be bigger
 spool middle should be longer to support whole cup
index 10fb119..0d3719a 100644 (file)
@@ -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;
 
@@ -84,7 +83,6 @@ channeldepth = prongwidth + ratchettoothheight;
 totalwidth = armendwallthick*2 + channelwidth;
 totalheight = channeldepth + armendbasethick;
 stalkwidth = prongwidth + prongstalkxwidth;
-xstraight = cupbigrad * xstraightmul;
 
 module ArmEnd(length=120){ ////toplevel
   translate([ratchettoothsmoothr, channelwidth/2, -armendbasethick]) {
@@ -136,32 +134,28 @@ module FilamentCupHandle(){
 }
 
 module FilamentCupCup(){
-  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
@@ -361,8 +355,8 @@ module TowerExtender(){ ////toplevel
 
 module FilamentCupPair(){ ////toplevel
   FilamentCup();
-  translate([xstraight + cupbigrad + prongthick*3,
-            cupbigrad*1.7,
+  translate([cupheight + prongthick*3,
+            cupwidth/2*1.7,
             0])
     rotate([0,0,180]) FilamentCup();
 }