ENH: calib support multi_extruder

1. backend support multi_extrude data structure
2. Compatible with third-party calibration
3. fix bug when get extruder in gocde export process

Change-Id: I5dac9abdd9907a521a1ba9b480f9e05640591bc1
(cherry picked from commit 21e6271e59ea8e4924866275566617d14a4b2b6e)
This commit is contained in:
zhimin.zeng
2024-07-08 17:32:49 +08:00
committed by Noisyfox
parent 8a491cd55a
commit 48f1d74127
7 changed files with 9 additions and 8 deletions

View File

@@ -9817,7 +9817,7 @@ void Plater::_calib_pa_pattern(const Calib_Params& params)
double speed = CalibPressureAdvance::find_optimal_PA_speed(
wxGetApp().preset_bundle->full_config(),
print_config.get_abs_value("line_width", nozzle_diameter),
print_config.get_abs_value("layer_height"), 0);
print_config.get_abs_value("layer_height"), 0, 0);
print_config.set_key_value("outer_wall_speed", new ConfigOptionFloat(speed));
speeds.assign({speed});
@@ -10006,7 +10006,7 @@ void Plater::_calib_pa_tower(const Calib_Params& params) {
auto full_config = wxGetApp().preset_bundle->full_config();
auto wall_speed = CalibPressureAdvance::find_optimal_PA_speed(
full_config, full_config.get_abs_value("line_width", nozzle_diameter),
full_config.get_abs_value("layer_height"), 0);
full_config.get_abs_value("layer_height"), 0, 0);
obj_cfg.set_key_value("outer_wall_speed", new ConfigOptionFloat(wall_speed));
obj_cfg.set_key_value("inner_wall_speed", new ConfigOptionFloat(wall_speed));
obj_cfg.set_key_value("seam_position", new ConfigOptionEnum<SeamPosition>(spRear));