From e746035f31f20a30f12abcbd4c8da64b70d5d7fa Mon Sep 17 00:00:00 2001 From: tao wang Date: Thu, 18 Jul 2024 19:50:16 +0800 Subject: [PATCH] FIX:Fix some multi nozzle issues jira:[for multi nozzle] Change-Id: Ibb9dafc3e664adb3a9058766f47f2d28938d6a0b --- src/slic3r/GUI/AMSMaterialsSetting.cpp | 12 +++++++++++- src/slic3r/GUI/DeviceManager.cpp | 4 ++-- src/slic3r/GUI/SelectMachine.cpp | 4 ++++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/slic3r/GUI/AMSMaterialsSetting.cpp b/src/slic3r/GUI/AMSMaterialsSetting.cpp index 7cade24a6..6b9774d8c 100644 --- a/src/slic3r/GUI/AMSMaterialsSetting.cpp +++ b/src/slic3r/GUI/AMSMaterialsSetting.cpp @@ -576,7 +576,17 @@ void AMSMaterialsSetting::on_select_ok(wxCommandEvent &event) // set filament if (m_is_third) { if (is_virtual_tray()) { - obj->command_ams_filament_settings(255, VIRTUAL_TRAY_MAIN_ID, ams_filament_id, ams_setting_id, std::string(col_buf), m_filament_type, nozzle_temp_min_int, nozzle_temp_max_int); + + auto tar_tray = VIRTUAL_TRAY_DEPUTY_ID; + + if (!obj->is_enable_np) { + tar_tray = VIRTUAL_TRAY_DEPUTY_ID; + } + else { + //todo + } + + obj->command_ams_filament_settings(255, tar_tray, ams_filament_id, ams_setting_id, std::string(col_buf), m_filament_type, nozzle_temp_min_int, nozzle_temp_max_int); } else { obj->command_ams_filament_settings(ams_id, tray_id, ams_filament_id, ams_setting_id, std::string(col_buf), m_filament_type, nozzle_temp_min_int, nozzle_temp_max_int); diff --git a/src/slic3r/GUI/DeviceManager.cpp b/src/slic3r/GUI/DeviceManager.cpp index 4687a692b..a6a5682f5 100644 --- a/src/slic3r/GUI/DeviceManager.cpp +++ b/src/slic3r/GUI/DeviceManager.cpp @@ -3429,7 +3429,7 @@ int MachineObject::parse_json(std::string payload, bool key_field_only) if (jj.contains("nozzle_target_temper")) { if (jj["nozzle_target_temper"].is_number()) { if (m_nozzle_data.nozzles.size() == 1) { - m_nozzle_data.nozzles[0].target_temp = jj["nozzle_temper"].get(); + m_nozzle_data.nozzles[0].target_temp = jj["nozzle_target_temper"].get(); } } } @@ -4303,7 +4303,7 @@ int MachineObject::parse_json(std::string payload, bool key_field_only) } else if (jj.contains("vt_tray")) { - auto main_slot = parse_vt_tray(jj.contains("vt_tray")); + auto main_slot = parse_vt_tray(jj["vt_tray"].get()); main_slot.id = std::to_string(VIRTUAL_TRAY_MAIN_ID); diff --git a/src/slic3r/GUI/SelectMachine.cpp b/src/slic3r/GUI/SelectMachine.cpp index db370724d..fa1047510 100644 --- a/src/slic3r/GUI/SelectMachine.cpp +++ b/src/slic3r/GUI/SelectMachine.cpp @@ -4454,6 +4454,10 @@ void SelectMachineDialog::reset_and_sync_ams_list() if (use_double_extruder) { + m_filament_left_panel->Show(); + m_filament_right_panel->Show(); + m_filament_panel->Hide(); + m_sizer_ams_mapping_left->SetCols(4); m_sizer_ams_mapping_left->Layout(); //m_filament_panel_left_sizer->Layout();