FIX: filament savings not consider flush multiplier

github:6214

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9cb9f8d172bfa501732bb50f437e261793e18972
(cherry picked from commit 274a05367313daac913e58b98dd8944e934ebabe)
This commit is contained in:
xun.zhang
2025-03-27 14:08:40 +08:00
committed by Noisyfox
parent 220d2fd574
commit 782c7f1d0c

View File

@@ -1016,6 +1016,14 @@ std::vector<int> ToolOrdering::get_recommended_filament_maps(const std::vector<s
nozzle_flush_mtx.emplace_back(wipe_volumes);
}
auto flush_multiplies = print_config.flush_multiplier.values;
flush_multiplies.resize(extruder_nums, 1);
for (size_t nozzle_id = 0; nozzle_id < extruder_nums; ++nozzle_id) {
for (auto& vec : nozzle_flush_mtx[nozzle_id]) {
for (auto& v : vec)
v *= flush_multiplies[nozzle_id];
}
}
std::vector<LayerPrintSequence> other_layers_seqs = get_other_layers_print_sequence(print_config.other_layers_print_sequence_nums.value, print_config.other_layers_print_sequence.values);
@@ -1140,6 +1148,15 @@ void ToolOrdering::reorder_extruders_for_minimum_flush_volume(bool reorder_first
nozzle_flush_mtx.emplace_back(wipe_volumes);
}
auto flush_multiplies = print_config->flush_multiplier.values;
flush_multiplies.resize(nozzle_nums, 1);
for (size_t nozzle_id = 0; nozzle_id < nozzle_nums; ++nozzle_id) {
for (auto& vec : nozzle_flush_mtx[nozzle_id]) {
for (auto& v : vec)
v *= flush_multiplies[nozzle_id];
}
}
std::vector<int>filament_maps(number_of_extruders, 0);
FilamentMapMode map_mode = FilamentMapMode::fmmAutoForFlush;