From 1d4b9a9f8219fd1a5dd4efd7bd09f44f71c0a214 Mon Sep 17 00:00:00 2001 From: hemai Date: Mon, 14 Jul 2025 20:19:08 +0800 Subject: [PATCH] FIX: support external filament with multi-printer Jira: [STUDIO-13091] Change-Id: I1f4cb255520f7216c67fc94466e9aa95d88240bd (cherry picked from commit 79ce3efc76f29df088f8cb4645aefc82fbf53036) --- src/slic3r/GUI/SendMultiMachinePage.cpp | 35 +++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/src/slic3r/GUI/SendMultiMachinePage.cpp b/src/slic3r/GUI/SendMultiMachinePage.cpp index f2e0293cf0..0b647fceb4 100644 --- a/src/slic3r/GUI/SendMultiMachinePage.cpp +++ b/src/slic3r/GUI/SendMultiMachinePage.cpp @@ -513,8 +513,39 @@ BBL::PrintParams SendMultiMachinePage::request_params(MachineObject* obj) params.ams_mapping_info = mapping_info; } else { - params.ams_mapping = ""; - params.ams_mapping_info = ""; + std::string temp; + std::string ams_array; + std::string ams_array2; + std::string mapping_info; + + // change to old version + for(auto &info : m_ams_mapping_result){ + info.tray_id = VIRTUAL_TRAY_DEPUTY_ID; + info.ams_id = VIRTUAL_AMS_DEPUTY_ID_STR; + info.slot_id = "0"; + } + get_ams_mapping_result(ams_array, temp, mapping_info); + + // change to new version + for(auto &info : m_ams_mapping_result){ + info.tray_id = VIRTUAL_TRAY_DEPUTY_ID; + info.ams_id = VIRTUAL_AMS_MAIN_ID_STR; + info.slot_id = "0"; + } + temp.clear(); + mapping_info.clear(); + get_ams_mapping_result(temp, ams_array2, mapping_info); + + // restore + for(auto &info : m_ams_mapping_result){ + info.tray_id = 0; + info.ams_id = ""; + info.slot_id = ""; + } + + params.ams_mapping = ams_array; + params.ams_mapping2 = ams_array2; + params.ams_mapping_info = mapping_info; } params.connection_type = obj->connection_type();