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

@@ -3097,7 +3097,7 @@ static bool custom_gcode_sets_temperature(const std::string &gcode, const int mc
// Do not process this piece of G-code by the time estimator, it already knows the values through another sources.
void GCode::print_machine_envelope(GCodeOutputStream &file, Print &print, int extruder_id)
{
int matched_machine_limit_idx = extruder_id * 2;
int matched_machine_limit_idx = get_extruder_id(extruder_id) * 2;
const auto flavor = print.config().gcode_flavor.value;
if ((flavor == gcfMarlinLegacy || flavor == gcfMarlinFirmware || flavor == gcfRepRapFirmware) &&
print.config().emit_machine_limits_to_gcode.value == true) {