chiark
/
gitweb
/
~ianmdlvl
/
reprap-play.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
filamentspool: Working on Cup
[reprap-play.git]
/
filamentspool.scad
diff --git
a/filamentspool.scad
b/filamentspool.scad
index 48d0a48291e8713199379baf389ca5db92ccae52..4e69f42dbf6effc557838d7be9b7114c3f86962d 100644
(file)
--- a/
filamentspool.scad
+++ b/
filamentspool.scad
@@
-8,9
+8,11
@@
bigslop=slop*2;
function selsz(sm,lg) = fdia < 2 ? sm : lg;
function usedove() = selsz(true,false);
function selsz(sm,lg) = fdia < 2 ? sm : lg;
function usedove() = selsz(true,false);
+num_arms = selsz(3,4);
+
exteffrad = 70;
exteffrad = 70;
-hubeffrad = selsz(30,
6
0);
-hubbigrad = selsz(20,
50
);
+hubeffrad = selsz(30,
5
0);
+hubbigrad = selsz(20,
45
);
hublwidth = selsz(3, 5);
hubstemwidth = 2;
hublthick = 10;
hublwidth = selsz(3, 5);
hubstemwidth = 2;
hublthick = 10;
@@
-83,6
+85,7
@@
nondove_armhole_hole = 4;
nondove_armhole_support = 7;
nondove_armhole_wall = 4;
nondove_armhole_slop = 0.5;
nondove_armhole_support = 7;
nondove_armhole_wall = 4;
nondove_armhole_slop = 0.5;
+nondove_armhole_slop_x = 0.5;
include <doveclip.scad>
include <cliphook.scad>
include <doveclip.scad>
include <cliphook.scad>
@@
-168,11
+171,11
@@
module FilamentCup() { ////toplevel
gapy = prongwidth;
dy = cupwidth/2 + gapy + overclipcupgap;
gapy = prongwidth;
dy = cupwidth/2 + gapy + overclipcupgap;
+ baselen = dy+cupwidth/2;
translate([0, dy, 0])
FilamentCupCup();
translate([0, dy, 0])
FilamentCupCup();
- translate([0, -1, 0]);
- cube([prongwidth, dy+1+cupwidth/2, prongthick]);
+ cube([prongwidth, baselen+1, prongthick]);
midrad = cupwidth/2 + prongwidth/2;
midrad = cupwidth/2 + prongwidth/2;
@@
-192,7
+195,7
@@
module FilamentCup() { ////toplevel
FilamentTeeth(fdia=fdia, h=teethh);
}
for (x = [-0.3, -1.3]) {
FilamentTeeth(fdia=fdia, h=teethh);
}
for (x = [-0.3, -1.3]) {
- translate([cupheight + overclipcupnextgap*x,
dy+cupwidth/2
+ prongthick, 0])
+ translate([cupheight + overclipcupnextgap*x,
baselen
+ prongthick, 0])
rotate([0,0, 12 + fdia])
FilamentTeeth(fdia=fdia, h=teethh);
}
rotate([0,0, 12 + fdia])
FilamentTeeth(fdia=fdia, h=teethh);
}
@@
-253,7
+256,7
@@
module Hub(){ ////toplevel
cylinder($fn=30, h=hublthick+2, r=(hubbigrad-hublwidth));
}
cylinder(h=hubaxlelen, r=axlerad+hublwidth);
cylinder($fn=30, h=hublthick+2, r=(hubbigrad-hublwidth));
}
cylinder(h=hubaxlelen, r=axlerad+hublwidth);
- for (ang=[0
,120,240
])
+ for (ang=[0
: 360/num_arms : 359
])
rotate([0,0,ang]) {
difference() {
if (usedove()){
rotate([0,0,ang]) {
difference() {
if (usedove()){
@@
-274,7
+277,7
@@
module Hub(){ ////toplevel
+ nondove_armhole_hole/2 + nondove_armhole_support,
nondove_allwidth,
nondove_armhole_wall + totalheight]);
+ nondove_armhole_hole/2 + nondove_armhole_support,
nondove_allwidth,
nondove_armhole_wall + totalheight]);
- translate([hubeffrad,
+ translate([hubeffrad
- nondove_armhole_slop_x
,
-nondove_allwidth/2
+ nondove_armhole_wall - nondove_armhole_slop,
nondove_armhole_wall])
-nondove_allwidth/2
+ nondove_armhole_wall - nondove_armhole_slop,
nondove_armhole_wall])
@@
-287,7
+290,7
@@
module Hub(){ ////toplevel
}
}
}
}
}
}
- for (ang = [0 :
60
: 359])
+ for (ang = [0 :
180/num_arms
: 359])
rotate([0,0,ang]) rotate([90,0,0]) {
translate([0,0,-hublwidth/2])
linear_extrude(height=hublwidth)
rotate([0,0,ang]) rotate([90,0,0]) {
translate([0,0,-hublwidth/2])
linear_extrude(height=hublwidth)
@@
-416,10
+419,10
@@
module FilamentCupPair(){ ////toplevel
}
//ArmEnd();
}
//ArmEnd();
-
//
FilamentCup();
+FilamentCup();
//FilamentCupPair();
//CupSecuringClip();
//FilamentCupPair();
//CupSecuringClip();
-Hub();
+
//
Hub();
//ArmExtender();
//Axle();
//AxleWasher();
//ArmExtender();
//Axle();
//AxleWasher();