3
1
Back

= KnobDiameter/2; KnobMinorRadius = KnobDiameter/2 * (1 - TaperPercentage/100); KnobRadius = KnobMinorRadius + (KnobMajorRadius-KnobMinorRadius)/2; Divot=CapType; TaperAngle=asin(KnobHeight / (sqrt(pow(KnobHeight, 2) cube([2, 2, KnobHeight+.001], center=true); cube([RingWidth*.5, MarkingWidth, 2], center=true); if (style == "nut"){ // a round shafthole base shape. See knob_base(). Rotate([0, 0, 45] cube([2, 2, KnobHeight+.001], center=true); cube([RingWidth*.5, MarkingWidth, 2], center=true); if (RingWidth>0 cylinder(r1=KnobMajorRadius + RingWidth, r2=KnobMinorRadius, h=RingThickness, $fn=50, center=true); if (style == "nut"){ // a hexagonal cutout (undersize to melt an m3 heat-set insert //hole(s) for anchor // visual indicator of space switch takes up } module mounting_hole_m3(h=thickness, flange=8, style="nut"){ cube([flange, flange, h], center=true); if (style .

New Pull Request