Michael

Results 185 comments of Michael

[This is a good primer](https://www.exploringbinary.com/why-0-point-1-does-not-exist-in-floating-point/) to this specific floating point problem. `0.01` as a double is `0.01000000000000000020816681711721685132943093776702880859375`

In case anyone with gear maths is looking, apex_to_apex appears to be wrong. Affecting the last cylinder in the difference (and probably more).

Nope, more complex than that...

Getting warmer, but my head hurts... Use this modified module ``` module involute_bevel_gear_tooth ( back_cone_radius, root_radius, base_radius, outer_radius, pitch_apex, cone_distance, half_thick_angle, involute_facets) { // echo ("involute_bevel_gear_tooth", // back_cone_radius, // root_radius,...

..and it involves pressure_angle, 36 is OK, 38 crosses the tip.

@hamiltont if you want a hack that gets past the CGAL error, in `module involute_bevel_gear_tooth ()` at line 282 replace points= with this ``` points=[ [back_cone_radius*2+0.1,0,cone_distance*2], [side1_point1[0],side1_point1[1],0], [side1_point2[0],min(side1_point2[1],side2_point2[1]),0], [side2_point2[0],max(side1_point2[1],side2_point2[1]),0], [side2_point1[0],side2_point1[1],0],...

@hamiltont Actually the above hack does affect the involute profile: ![Capture gears wrong](https://user-images.githubusercontent.com/1972961/64740731-a9322a00-d539-11e9-9176-468d1354b557.JPG) This (also a hack) is closer, but also loses the flat top: ``` points=[ [back_cone_radius*2+0.1,0,cone_distance*2], [side1_point1[0],side1_point1[1],0], [side1_point2[0],min(side1_point2[1],0),0],...

There has been discussion re security in the past, about automatically loading external content, that ended with 'not a good idea'.