+ linear_extrude(height= guidespacer_len+5)
+ FilamentGuideSpacerInnerTemplate();
+ }
+}
+
+
+//----- replacement filament guide arm for TAZ-5 -----
+
+guidearm_armslop = 0.25;
+guidearm_armlenslop = 0.25;
+
+guidearm_hookprotr = 3;
+guidearm_hookprotrflat = 1;
+guidearm_hookslope = 0.3;
+
+guidearm_totallen = 60;
+
+guidearm_screwplatesz = 12;
+guidearm_screwplateth = 4;
+guidearm_screwplatewd = 15;
+guidearm_screwhole = 5 + 0.5;
+
+guidearm_bendlen = 40;
+guidearm_bendslot = 4.5;
+
+guidearm_stopthick = 4;
+guidearm_protrslop = 1.0;
+
+// calculated
+
+guidearm_armdia = guide_armdia - guidearm_armslop;
+guidearm_armwidth = guide_armwidth - guidearm_armslop;
+guidearm_armcorelen = guide_armcorelen + guidearm_armlenslop;
+
+guidearm_base_z0 = -(guidearm_totallen - guidearm_armcorelen);
+
+guidearm_realbendlen = min(guidearm_bendlen,
+ guidearm_totallen - guidearm_screwplateth - 0.1);
+guidearm_slopelen = guidearm_hookprotr/guidearm_hookslope;
+
+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, $fn=80);
+ translate([0,0, guidearm_armcorelen]){
+ hull(){
+ FilamentGuideArmStop(guidearm_hookprotrflat);
+ translate([0,0, guidearm_slopelen])
+ cylinder(r=r, h=guidearm_hookprotrflat, $fn=80);
+ }