diff --git a/gears.scad b/gears.scad index f7d6904..7d2e09f 100644 --- a/gears.scad +++ b/gears.scad @@ -213,19 +213,19 @@ function _inherit_gear_thickness(thickness) = // You can compute the shortening parameter using {{gear_shorten()}}. Note that the actual shortening distance is obtained // by scaling the shortening fator by the gear's module. // Figure(2D,Big,NoAxes,VPT=[55.8861,-4.31463,8.09832],VPR=[0,0,0],VPD=325.228): With large profile shifts the teeth need to be shortened or they don't have clearance in the valleys of the teeth in the meshing gear. -// teeth1=25; -// teeth2=19; -// mod=4; -// ps1 = 0.75; -// ps2 = 0.75; -// d = gear_dist(mod=mod, teeth1,teeth2,0,ps1,ps2); -// color("lightblue") -// spur_gear2d(mod=mod,teeth=teeth1,profile_shift=ps1,gear_spin=-90); -// right(d) -// spur_gear2d(mod=mod,teeth=teeth2,profile_shift=ps2,gear_spin=-90); -// right(9)stroke([[1.3*d/2,0],[d/2+4,0]], endcap2="arrow2",color="black"); -// fwd(2)right(d/2+25)color("black"){back(4)text("No clearance",size=6); -// fwd(4)text("at tooth tip",size=6);} + teeth1=25; + teeth2=19; + mod=4; + ps1 = 0.75; + ps2 = 0.75; + d = gear_dist(mod=mod, teeth1,teeth2,0,ps1,ps2); + color("lightblue") + spur_gear2d(mod=mod,teeth=teeth1,profile_shift=ps1,gear_spin=-90); + right(d) + spur_gear2d(mod=mod,teeth=teeth2,profile_shift=ps2,gear_spin=-90); + right(9)stroke([[1.3*d/2,0],[d/2+4,0]], endcap2="arrow2",color="black"); + fwd(2)right(d/2+25)color("black"){back(4)text("No clearance",size=6); + fwd(4)text("at tooth tip",size=6);} // Figure(2D,Big,NoAxes,VPT=[55.8861,-4.31463,8.09832],VPR=[0,0,0],VPD=325.228): Applying the correct shortening factor restores the clearance to its set value. // teeth1=25; // teeth2=19; @@ -3256,13 +3256,13 @@ function _working_normal_pressure_angle_skew(teeth1,profile_shift1,helical1, tee // -- // pressure_angle = The pressure angle of the gear. // Example(3D,Med,NoAxes,VPT=[-2.62091,2.01048,-1.31405],VPR=[55,0,25],VPD=74.4017): These gears are auto profile shifted and as a result, do not mesh at the sum of their helical angles, but at 2.5 degrees more. - circ_pitch=5; teeth1=12; teeth2=7; ha1=25; ha2=30; thick=10; - d = gear_dist_skew(circ_pitch=circ_pitch, teeth1, teeth2, ha1, ha2); - ang = gear_skew_angle(teeth1, teeth2, helical1=ha1, helical2=ha2); // Returns 57.7 - left(d/2) - spur_gear(circ_pitch, teeth1, helical=ha1, thickness=thick, gear_spin=-90); - right(d/2) color("lightblue") - xrot(ang) spur_gear(circ_pitch, teeth2, helical=ha2, thickness=thick, gear_spin=90-180/teeth2); +// circ_pitch=5; teeth1=12; teeth2=7; ha1=25; ha2=30; thick=10; +// d = gear_dist_skew(circ_pitch=circ_pitch, teeth1, teeth2, ha1, ha2); +// ang = gear_skew_angle(teeth1, teeth2, helical1=ha1, helical2=ha2); // Returns 57.7 +// left(d/2) +// spur_gear(circ_pitch, teeth1, helical=ha1, thickness=thick, gear_spin=-90); +// right(d/2) color("lightblue") +// xrot(ang) spur_gear(circ_pitch, teeth2, helical=ha2, thickness=thick, gear_spin=90-180/teeth2); function gear_skew_angle(teeth1,teeth2,helical1,helical2,profile_shift1,profile_shift2,pressure_angle=20) = assert(all_nonnegative([teeth1,teeth2]),"Must give nonnegative values for teeth")