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 cup overclip fix no stupid cut
[reprap-play.git]
/
filamentspool.scad
diff --git
a/filamentspool.scad
b/filamentspool.scad
index 65592f501de01f47b5c5b8b1604b9620c961a46b..f13ba430e0be311a7946d841edcda11af0f59483 100644
(file)
--- a/
filamentspool.scad
+++ b/
filamentspool.scad
@@
-1,3
+1,6
@@
+// -*- C -*-
+
+fdia=1.75;
slop=0.5;
bigslop=slop*2;
slop=0.5;
bigslop=slop*2;
@@
-10,23
+13,32
@@
ratchettoothheight=5;
ratchettoothsmoothr=1;
ratchettoothslope=0.75;
overlap=0.5;
ratchettoothsmoothr=1;
ratchettoothslope=0.75;
overlap=0.5;
-cupbigrad=35;
+cupbigrad=20;
+
+xstraightmul = 1.75;
+
+propxshift = 0;
+
+doveclipheight = 10;
+
+teethh=3;
+teethgapx=4+fdia;
prongstalkxwidth=3;
prongstalkxwidth=3;
-stalklength=
40
;
+stalklength=
35
;
overclipcupgap=5;
overclipdepth=15;
overcliproundr=2.0;
overclipthick=0.5;
overclipcupgap=5;
overclipdepth=15;
overcliproundr=2.0;
overclipthick=0.5;
+overclipsmaller=-2.5;
+overclipbigger=0.0;
+
wingspoke=3;
wingsize=6;
wingthick=3;
wingspoke=3;
wingsize=6;
wingthick=3;
-overclipsmaller=-1.0;
-overclipbigger=2.0;
-
armendwallthick=2.5;
armendbasethick=1.2;
armendwallthick=2.5;
armendbasethick=1.2;
@@
-34,6
+46,7
@@
ratchetpawl=ratchetstep-ratchettooth-bigslop*2;
include <doveclip.scad>
include <cliphook.scad>
include <doveclip.scad>
include <cliphook.scad>
+include <filamentteeth.scad>
channelwidth = prongthick + slop;
channeldepth = prongwidth + ratchettoothheight;
channelwidth = prongthick + slop;
channeldepth = prongwidth + ratchettoothheight;
@@
-41,8
+54,6
@@
totalwidth = armendwallthick*2 + channelwidth;
totalheight = channeldepth + armendbasethick;
stalkwidth = prongwidth + prongstalkxwidth;
totalheight = channeldepth + armendbasethick;
stalkwidth = prongwidth + prongstalkxwidth;
-doveclipheight = totalheight;
-
module ArmEnd(length=120){
translate([ratchettoothsmoothr, channelwidth/2, -armendbasethick]) {
rotate([0,0,-90])
module ArmEnd(length=120){
translate([ratchettoothsmoothr, channelwidth/2, -armendbasethick]) {
rotate([0,0,-90])
@@
-53,9
+64,11
@@
module ArmEnd(length=120){
translate([0, -armendwallthick, -armendbasethick])
cube([length, totalwidth, totalheight]);
translate([-1, 0, 0])
translate([0, -armendwallthick, -armendbasethick])
cube([length, totalwidth, totalheight]);
translate([-1, 0, 0])
+ cube([length+1 - ratchettooth, channelwidth, channeldepth+1]);
+ translate([-1, 0, ratchettoothheight])
cube([length+2, channelwidth, channeldepth+1]);
}
cube([length+2, channelwidth, channeldepth+1]);
}
- for (dx = [0 : ratchetstep : length -
stalklength
]) translate([dx,0,0]) {
+ for (dx = [0 : ratchetstep : length -
ratchetstep
]) translate([dx,0,0]) {
translate([ratchettoothsmoothr+0.5, armendwallthick/2, 0]) minkowski(){
rotate([90,0,0])
cylinder($fn=20, r=ratchettoothsmoothr, h=armendwallthick);
translate([ratchettoothsmoothr+0.5, armendwallthick/2, 0]) minkowski(){
rotate([90,0,0])
cylinder($fn=20, r=ratchettoothsmoothr, h=armendwallthick);
@@
-64,7
+77,7
@@
module ArmEnd(length=120){
[ 0, 0, 1, 0 ],
[ 0, 0, 0, 1 ]])
cube([ratchettooth - ratchettoothsmoothr*2,
[ 0, 0, 1, 0 ],
[ 0, 0, 0, 1 ]])
cube([ratchettooth - ratchettoothsmoothr*2,
- channelwidth, ratchettoothheight]);
+ channelwidth, ratchettoothheight
- ratchettoothsmoothr
]);
}
}
}
}
}
}
@@
-84,14
+97,14
@@
module FilamentCupHandle(){
[ 0, 0, 0, 1 ]])
cube([pawlusewidth,
ratchettoothheight - ratchettoothsmoothr,
[ 0, 0, 0, 1 ]])
cube([pawlusewidth,
ratchettoothheight - ratchettoothsmoothr,
- prongthick]);
+ prongthick
- 1
]);
}
}
}
}
module FilamentCupCup(){
}
}
}
}
module FilamentCupCup(){
- xstraight = cupbigrad;
+ xstraight = cupbigrad
* xstraightmul
;
linear_extrude(height=prongthick) {
FlatArc(0,0, cupbigrad,cupbigrad+prongwidth, 89,271, $fn=80);
}
linear_extrude(height=prongthick) {
FlatArc(0,0, cupbigrad,cupbigrad+prongwidth, 89,271, $fn=80);
}
@@
-105,7
+118,8
@@
module FilamentCup() {
FilamentCupHandle();
dx = cupbigrad + prongwidth;
FilamentCupHandle();
dx = cupbigrad + prongwidth;
- dy = cupbigrad + prongwidth + overclipcupgap;
+ gapy = prongwidth;
+ dy = cupbigrad + gapy + overclipcupgap;
translate([dx, dy, 0])
FilamentCupCup();
translate([dx, dy, 0])
FilamentCupCup();
@@
-114,14
+128,19
@@
module FilamentCup() {
midrad = cupbigrad + prongwidth/2;
midrad = cupbigrad + prongwidth/2;
- propshift = stalklength - overclipdepth - prongthick;
+ propshift = stalklength - overclipdepth - prongthick
+ propxshift
;
proptaken = propshift;
echo(cupbigrad, dx, midrad, propshift, proptaken);
proptaken = propshift;
echo(cupbigrad, dx, midrad, propshift, proptaken);
- translate([propshift, -1, 0])
+ translate([propshift, -1, 0]) {
+ // something is wrong with the y calculation
cube([prongwidth,
cube([prongwidth,
- dy - sqrt(midrad*midrad - proptaken*proptaken),
+ dy - sqrt(midrad*midrad - proptaken*proptaken)
- prongwidth/2
,
prongthick]);
prongthick]);
+ }
+ translate([0, overclipcupgap, 0])
+ rotate([0,0, 102 + fdia])
+ FilamentTeeth(fdia=fdia, h=teethh);
}
module CupSecuringClipSolid(w,d,h1,h2){
}
module CupSecuringClipSolid(w,d,h1,h2){
@@
-150,10
+169,14
@@
module CupSecuringClip(){
cube([wingswidth, wingsize, wingthick]);
}
translate([0,0,-0.1])
cube([wingswidth, wingsize, wingthick]);
}
translate([0,0,-0.1])
- CupSecuringClipSolidSmooth(xrad=0, xdepth=
5
);
+ CupSecuringClipSolidSmooth(xrad=0, xdepth=
0.2
);
}
}
}
}
+module ArmDoveClipPin(){
+ DoveClipPin(h=doveclipheight);
+}
+
//ArmEnd();
//FilamentCup();
//ArmEnd();
//FilamentCup();
-CupSecuringClip();
+
//
CupSecuringClip();