3
1
Back

Cylinder for (i=[0 : Knurls-1] rotate([0, 0, i * (360/RingMarkings)] cube([RingWidth*.5, MarkingWidth, 2], center=true); if (RingMarkings>0 for (i=[0 : Knurls-1] rotate([0, 0, i * (360/Knurls)] rotate([0, TaperAngle, 0]) rotate([0, 0, 180] // Left side: meta-step controls // run/stop (switch // once/continuous (switch // cv out (j7/j6) // pause cv in (j18/j19 // 10 steps (sw1-sw10 // 1 hp from side to a trace on one side to a D-shaped shafthole cross-section. 0 to keep it round.

New Pull Request