From d382857cbc727d5a92ed236e8a1ca020b8594916 Mon Sep 17 00:00:00 2001 From: "jiaxi.chen" Date: Fri, 23 May 2025 15:41:19 +0800 Subject: [PATCH] =?UTF-8?q?FIX:=20=E6=94=AF=E6=92=91=E8=AE=BE=E7=BD=AEPVA?= =?UTF-8?q?=E4=B8=BA=E4=B8=BB=E4=BD=93=E6=97=B6=EF=BC=8C=E5=BA=94=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E6=8F=90=E7=A4=BA=EF=BC=8C=E5=B0=86=E7=95=8C=E9=9D=A2?= =?UTF-8?q?=E4=B9=9F=E5=90=8C=E6=AD=A5=E4=B8=BAPVA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit jira: STUDIO-12270 Change-Id: I01a399ff9a3e0451e9c931a1465e44658a823ae3 --- src/slic3r/GUI/Tab.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index 060d253a0..4662aa97f 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -1567,6 +1567,29 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value) } wxGetApp().plater()->update(); } + if (is_soluble_filament(filament_id) && + !(m_config->opt_float("support_top_z_distance") == 0 && m_config->opt_float("support_interface_spacing") == 0 && + m_config->opt_enum("support_interface_pattern") == SupportMaterialInterfacePattern::smipRectilinearInterlaced && + filament_id == interface_filament_id)) { + wxString msg_text = _L("When using soluble material for the support, We recommend the following settings:\n" + "0 top z distance, 0 interface spacing, interlaced rectilinear pattern, disable independent support layer height \n" + "and use soluble materials for both support interface and support base"); + msg_text += "\n\n" + _L("Change these settings automatically? \n" + "Yes - Change these settings automatically\n" + "No - Do not change these settings for me"); + MessageDialog dialog(wxGetApp().plater(), msg_text, "Suggestion", wxICON_WARNING | wxYES | wxNO); + DynamicPrintConfig new_conf = *m_config; + if (dialog.ShowModal() == wxID_YES) { + new_conf.set_key_value("support_top_z_distance", new ConfigOptionFloat(0)); + new_conf.set_key_value("support_interface_spacing", new ConfigOptionFloat(0)); + new_conf.set_key_value("support_interface_pattern", + new ConfigOptionEnum(SupportMaterialInterfacePattern::smipRectilinearInterlaced)); + new_conf.set_key_value("independent_support_layer_height", new ConfigOptionBool(false)); + new_conf.set_key_value("support_interface_filament", new ConfigOptionInt(filament_id + 1)); + m_config_manipulation.apply(m_config, &new_conf); + } + wxGetApp().plater()->update(); + } } // BBS popup a message to ask the user to set optimum parameters for support interface if support materials are used