From 4667fb8be9d42c330b035a4c215100f66b1a2a0e Mon Sep 17 00:00:00 2001 From: numzero Date: Fri, 9 Oct 2026 02:12:07 +0300 Subject: [PATCH] adjust addendums/dedendums --- src/main.rs | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main.rs b/src/main.rs index fa42271..6a00e37 100644 --- a/src/main.rs +++ b/src/main.rs @@ -99,21 +99,21 @@ fn main() { dedendum: gear_profile.addemdum, pressure_angle: gear_profile.pressure_angle, }; - let gear_profile_adj = Profile { - addemdum: adjust_offset(gear_profile.addemdum), - dedendum: -adjust_offset(-gear_profile.dedendum), - pressure_angle: adjust_angle(gear_profile.pressure_angle), - }; let cutter_profile_adj = Profile { addemdum: adjust_offset(cutter_profile.addemdum), dedendum: -adjust_offset(-cutter_profile.dedendum), pressure_angle: adjust_angle(cutter_profile.pressure_angle), }; + let gear_profile_adj = Profile { + addemdum: adjust_offset(gear_profile.addemdum), + dedendum: -adjust_offset(-gear_profile.dedendum), + pressure_angle: adjust_angle(gear_profile.pressure_angle), + }; let n_points_per_tooth = 100; let n_points = n_points_per_tooth * n_teeth_sample; - let mut inv_shape = vec![r_pitch + gear_profile_adj.addemdum; n_points]; - let mut bevel_shape = vec![r_pitch + gear_profile_adj.addemdum; n_points]; + let mut inv_shape = vec![r_pitch + cutter_profile_adj.dedendum; n_points]; + let mut bevel_shape = vec![r_pitch + cutter_profile_adj.dedendum; n_points]; let mut show_crown_gear = false; let mut show_crown_cutter = true; let mut show_rack_gear = false; @@ -233,12 +233,18 @@ fn main() { gc.close_path(); gc.stroke_color(Rgba(0.3, 0.3, 0.3, 0.4)); gc.stroke(); + gc.stroke_color(Rgba(0.3, 0.3, 0.3, 0.1)); gc.circle(0.0, r_pitch, r_pitch - gear_profile_adj.dedendum); gc.circle(0.0, r_pitch, r_pitch); gc.circle(0.0, r_pitch, r_pitch + gear_profile_adj.addemdum); gc.stroke(); + gc.stroke_color(Rgba(1.0, 0.0, 0.0, 0.1)); + gc.circle(0.0, r_pitch, r_pitch - cutter_profile_adj.addemdum); + gc.circle(0.0, r_pitch, r_pitch + cutter_profile_adj.dedendum); + gc.stroke(); + line( gc, bevel_shape.iter().enumerate().map(|(k, r)| kr_to_xy(k, *r)),