From 099dbb404696c20e29d9c191b48576c336cde7e6 Mon Sep 17 00:00:00 2001 From: yw4z Date: Sat, 23 Aug 2025 18:19:00 +0300 Subject: [PATCH] Fix: Reset object settings not working for plate's Skirt Start Angle and Other Layers Sequence (#10482) * init --- src/slic3r/GUI/PartPlate.cpp | 5 +++++ src/slic3r/GUI/PartPlate.hpp | 3 +++ src/slic3r/GUI/Tab.cpp | 2 ++ 3 files changed, 10 insertions(+) diff --git a/src/slic3r/GUI/PartPlate.cpp b/src/slic3r/GUI/PartPlate.cpp index 2a8987bdc0..5818d0a449 100644 --- a/src/slic3r/GUI/PartPlate.cpp +++ b/src/slic3r/GUI/PartPlate.cpp @@ -235,6 +235,11 @@ void PartPlate::reset_bed_type() m_config.erase("curr_bed_type"); } +void PartPlate::reset_skirt_start_angle() +{ + m_config.erase("skirt_start_angle"); +} + void PartPlate::set_print_seq(PrintSequence print_seq) { std::string print_seq_key = "print_sequence"; diff --git a/src/slic3r/GUI/PartPlate.hpp b/src/slic3r/GUI/PartPlate.hpp index b262f91f17..bbe1cbae46 100644 --- a/src/slic3r/GUI/PartPlate.hpp +++ b/src/slic3r/GUI/PartPlate.hpp @@ -227,6 +227,9 @@ public: BedType get_bed_type(bool load_from_project = false) const; void set_bed_type(BedType bed_type); void reset_bed_type(); + + void reset_skirt_start_angle(); + DynamicPrintConfig* config() { return &m_config; } // set print sequence per plate diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index a4fbacc205..9932c5f5f5 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -2930,8 +2930,10 @@ void TabPrintPlate::reset_model_config() } auto plate = dynamic_cast(plate_item.first); plate->reset_bed_type(); + plate->reset_skirt_start_angle(); plate->set_print_seq(PrintSequence::ByDefault); plate->set_first_layer_print_sequence({}); + plate->set_other_layers_print_sequence({}); plate->set_spiral_vase_mode(false, true); notify_changed(plate_item.first); }