From 424ebebab4af516b92a94f39463b33984f5c26a2 Mon Sep 17 00:00:00 2001 From: YuSanka Date: Tue, 1 Oct 2019 14:27:29 +0200 Subject: [PATCH 1/3] Fixed "unhandled unknown exception", when try to change an extruder count. Side effect after https://github.com/prusa3d/PrusaSlicer/commit/86b258f727212fde4cf4a7a5160bfe7d2b7e0972. --- src/slic3r/GUI/Tab.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index 803a5cf082d..d3f331442fb 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -1808,7 +1808,10 @@ void TabPrinter::build_fff() optgroup->append_single_option_line("single_extruder_multi_material"); optgroup->m_on_change = [this, optgroup](t_config_option_key opt_key, boost::any value) { - size_t extruders_count = boost::any_cast(optgroup->get_value("extruders_count")); + // optgroup->get_value() return int for def.type == coInt, + // Thus, there should be boost::any_cast ! + // Otherwise, boost::any_cast causes an "unhandled unknown exception" + size_t extruders_count = size_t(boost::any_cast(optgroup->get_value("extruders_count"))); wxTheApp->CallAfter([this, opt_key, value, extruders_count]() { if (opt_key == "extruders_count" || opt_key == "single_extruder_multi_material") { extruders_count_changed(extruders_count); From 113daacca9ed23f58532c3073199ae4f9b3fd1d3 Mon Sep 17 00:00:00 2001 From: tamasmeszaros Date: Tue, 1 Oct 2019 14:44:07 +0200 Subject: [PATCH 2/3] Add upper limit on 1.0 to sla display gamma parameter. --- src/libslic3r/PrintConfig.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 1ce00f269d1..78dd60a4b99 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -2392,6 +2392,7 @@ void PrintConfigDef::init_sla_params() "the threshold in the middle. This behaviour eliminates " "antialiasing without losing holes in polygons."); def->min = 0; + def->max = 1; def->mode = comExpert; def->set_default_value(new ConfigOptionFloat(1.0)); From 5977c7715bdbd1b9d005df033ff8cfa0628a5107 Mon Sep 17 00:00:00 2001 From: tamasmeszaros Date: Tue, 1 Oct 2019 14:57:37 +0200 Subject: [PATCH 3/3] Don't disable pad around object parameters if supports are disabled. --- src/slic3r/GUI/ConfigManipulation.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/slic3r/GUI/ConfigManipulation.cpp b/src/slic3r/GUI/ConfigManipulation.cpp index c9cdff16289..9ca08809b0e 100644 --- a/src/slic3r/GUI/ConfigManipulation.cpp +++ b/src/slic3r/GUI/ConfigManipulation.cpp @@ -354,8 +354,7 @@ void ConfigManipulation::toggle_print_sla_options(DynamicPrintConfig* config) toggle_field("pad_wall_slope", pad_en); toggle_field("pad_around_object", pad_en); - bool has_suppad = pad_en && supports_en; - bool zero_elev = config->opt_bool("pad_around_object") && has_suppad; + bool zero_elev = config->opt_bool("pad_around_object") && pad_en; toggle_field("support_object_elevation", supports_en && !zero_elev); toggle_field("pad_object_gap", zero_elev);