3
1
Back

Or translation of a circle. When using many narrow cylinders you can be painted. CapType = 1; // [0:Flat, 1:Recessed, 2:Dome] // Do you want a large timer-knob style pointer? TimerKnob=0; // [0:No, 1:Yes] ////////////////////////// ////////////////////////// RingThickness = 5*1; DivotDepth = 1.5*1; MarkingWidth = 1.5*1; MarkingWidth = 1.5*1; DistanceBetweenKnurls = 3*1; TimerKnobConst = 1.8*1; ////////////////////////// KnobMinorRadius = KnobDiameter/2 * (1 - TaperPercentage/100); KnobRadius = KnobMinorRadius + (KnobMajorRadius-KnobMinorRadius)/2; KnobCircumference = PI*KnobDiameter; Knurls = round(KnobCircumference/DistanceBetweenKnurls); Divot=CapType; TaperAngle=asin(KnobHeight / (sqrt(pow(KnobHeight, 2) pow(KnobMajorRadius-KnobMinorRadius,2)))) - 90; DivotRadius = KnobMinorRadius*.4; // Primary knob cylinder for (i=[0 : Knurls-1] rotate([0, 0, i * (360/Knurls)] rotate([0, TaperAngle, 0]) rotate([0, 0, 45] cube([2, 2, KnobHeight+.001], center=true); cube([RingWidth*.5, MarkingWidth, 2], center=true); if (style == "nut.

New Pull Request