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 bugfix excrescence
[reprap-play.git]
/
filamentspool.scad
diff --git
a/filamentspool.scad
b/filamentspool.scad
index 65592f501de01f47b5c5b8b1604b9620c961a46b..46fee725d8b9b4bc77de9d33c8fd3c316cd8ccbb 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,11
+13,20
@@
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;
overclipcupgap=5;
overclipdepth=15;
overcliproundr=2.0;
@@
-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])
@@
-84,14
+95,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
+116,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
+126,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([stalklength + overclipdepth, gapy, 0])
+ rotate([0,0,-(10 + fdia)])
+ FilamentTeeth(fdia=fdia, h=teethh);
}
module CupSecuringClipSolid(w,d,h1,h2){
}
module CupSecuringClipSolid(w,d,h1,h2){
@@
-154,6
+171,10
@@
module CupSecuringClip(){
}
}
}
}
+module ArmDoveClipPin(){
+ DoveClipPin(h=doveclipheight);
+}
+
//ArmEnd();
//FilamentCup();
//ArmEnd();
//FilamentCup();
-CupSecuringClip();
+
//
CupSecuringClip();