guide_armdia = 15.0;
guide_armwidth = 10.2;
-guide_armcorelen = 15.3;
+guide_armcorelen = 25.0;
+guide_clipcirclethick = 10.0;
guidefilclip_outerdia = 22.8;
guidespacer_armslop = 0.75;
-guidespacer_armlenslop = 0.75;
+guidespacer_armlenslop = 1.05;
guidespacer_prongprotrude = 4;
guidespacer_thick = 1.6;
guidespacer_armdia = guide_armdia + guidespacer_armslop;
guidespacer_armwidth = guide_armwidth + guidespacer_armslop;
-guidespacer_len = guide_armcorelen + guidespacer_armlenslop;
+guidespacer_len = guide_armcorelen - guide_clipcirclethick
+ + guidespacer_armlenslop;
guidespacer_wingheight = (guidefilclip_outerdia - guidespacer_armdia)/2;
guidearm_bendlen = 50;
guidearm_bendslot = 5;
+guidearm_stopthick = 4;
+
// calculated
guidearm_armdia = guide_armdia - guidearm_armslop;
guidearm_realbendlen = min(guidearm_bendlen,
guidearm_totallen - guidearm_screwplateth - 0.1);
+module FilamentGuideArmStop(h){
+ for (ts=[-1,+1]) {
+ translate([ts * guidearm_hookprotr, 0,0])
+ cylinder(r=guidearm_armdia/2, h, $fn=80);
+ }
+}
+
module FilamentGuideArmShaftPositive(){
r = guidearm_armdia/2;
translate([0,0, guidearm_base_z0+1])
- cylinder(r=r, h= guidearm_totallen);
+ cylinder(r=r, h= guidearm_totallen, $fn=80);
translate([0,0, guidearm_armcorelen]){
hull(){
- for (ts=[-1,+1]) {
- translate([ts * guidearm_hookprotr, 0,0])
- cylinder(r=r, h=guidearm_hookprotrflat);
- }
+ FilamentGuideArmStop(guidearm_hookprotrflat);
translate([0,0, guidearm_hookprotr/guidearm_hookslope])
- cylinder(r=r, h=guidearm_hookprotrflat);
+ cylinder(r=r, h=guidearm_hookprotrflat, $fn=80);
}
}
+ mirror([0,0,1])
+ FilamentGuideArmStop(guidearm_stopthick);
}
module FilamentGuideArmBase(){
translate([ts * (guidearm_armdia/2 + guidearm_screwplatesz/2),
0,
-20])
- cylinder(r= guidearm_screwhole/2, h=40);
+ cylinder(r= guidearm_screwhole/2, h=40, $fn=20);
}
}
}