From 339b59749b824ce659dd62e469d160678a61c17e Mon Sep 17 00:00:00 2001 From: Ian Chua Date: Mon, 28 Sep 2026 13:33:49 +0800 Subject: [PATCH] fix: expose initial_no_support_extruder to the filename format template --- src/libslic3r/GCode.cpp | 1 + src/libslic3r/Print.cpp | 3 ++- src/libslic3r/Print.hpp | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 77a05ed171..3d391843ba 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -4198,6 +4198,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato // Const input (tool-change fallback for non-wipe-tower prints) print.tool_ordering())); print.m_print_statistics.initial_tool = initial_extruder_id; + print.m_print_statistics.initial_no_support_tool = initial_non_support_extruder_id; if (!is_bbl_printers) { file.write_format("; total filament used [g] = %.2lf\n", print.m_print_statistics.total_weight); diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp index ed3ac6de88..93b1e728de 100644 --- a/src/libslic3r/Print.cpp +++ b/src/libslic3r/Print.cpp @@ -5049,6 +5049,7 @@ DynamicConfig PrintStatistics::config() const config.set_key_value("total_wipe_tower_filament", new ConfigOptionFloat(this->total_wipe_tower_filament)); config.set_key_value("initial_tool", new ConfigOptionInt(static_cast(this->initial_tool))); config.set_key_value("initial_extruder", new ConfigOptionInt(static_cast(this->initial_tool))); + config.set_key_value("initial_no_support_extruder", new ConfigOptionInt(static_cast(this->initial_no_support_tool))); return config; } @@ -5058,7 +5059,7 @@ DynamicConfig PrintStatistics::placeholders() for (const std::string key : { "print_time", "normal_print_time", "silent_print_time", "used_filament", "extruded_volume", "extruded_volume_total", "total_cost", "total_weight", "extruded_weight_total", - "initial_tool", "initial_extruder", "total_toolchanges", "total_wipe_tower_cost", "total_wipe_tower_filament"}) + "initial_tool", "initial_extruder", "initial_no_support_extruder", "total_toolchanges", "total_wipe_tower_cost", "total_wipe_tower_filament"}) config.set_key_value(key, new ConfigOptionString(std::string("{") + key + "}")); return config; } diff --git a/src/libslic3r/Print.hpp b/src/libslic3r/Print.hpp index 12be35ea3c..64709388e0 100644 --- a/src/libslic3r/Print.hpp +++ b/src/libslic3r/Print.hpp @@ -830,6 +830,7 @@ struct PrintStatistics double total_wipe_tower_cost; double total_wipe_tower_filament; unsigned int initial_tool; + unsigned int initial_no_support_tool; std::map filament_stats; // Config with the filled in print statistics. @@ -848,6 +849,7 @@ struct PrintStatistics total_wipe_tower_cost = 0.; total_wipe_tower_filament = 0.; initial_tool = 0; + initial_no_support_tool = 0; filament_stats.clear(); } static const std::string FilamentUsedG;