From 003086191577901ac6d01786623f5604bd7d7e8f Mon Sep 17 00:00:00 2001 From: tao wang Date: Mon, 30 Dec 2024 17:48:48 +0800 Subject: [PATCH] FIX:fixed a single has incorrect AMS filamet road jira:[none] Change-Id: I26cdf08ddb5586cb1511d6aa1c42e7fd308c58f3 (cherry picked from commit a43ad7db0e1986757b3440a15682aaa906e34a8e) --- src/slic3r/GUI/Widgets/AMSControl.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/slic3r/GUI/Widgets/AMSControl.cpp b/src/slic3r/GUI/Widgets/AMSControl.cpp index 7164e69e23..9fbbb8501d 100644 --- a/src/slic3r/GUI/Widgets/AMSControl.cpp +++ b/src/slic3r/GUI/Widgets/AMSControl.cpp @@ -1624,12 +1624,22 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy if (model == AMSModel::AMS_LITE){ length = left ? 145 : 45; } - if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::LITE_EXT){ - length = 145; + if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::LITE_EXT) { + + if (m_ams_info.size() == 0 && m_ext_info.size() == 1) { + length = 13; + } else { + length = 145; + } } - if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::GENERIC_EXT){ - length = left ? 110 : 82; + if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::GENERIC_EXT) { + if (m_ams_info.size() == 0 && m_ext_info.size() == 1) { + left = true; + length = 49; + } else { + length = left ? 110 : 82; + } } for (auto i = 0; i < m_ams_info.size(); i++) {