From 88521bb8392ec252a6cdcaff50ee80e80c8c0653 Mon Sep 17 00:00:00 2001 From: enricoturri1966 Date: Fri, 14 Jan 2022 14:13:43 +0100 Subject: [PATCH] Fixed GLVolumeCollection::update_colors_by_extruder by using ColorRGBs in place of ColorRGBAs --- src/slic3r/GUI/3DScene.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/slic3r/GUI/3DScene.cpp b/src/slic3r/GUI/3DScene.cpp index 93f0548bc..120d66781 100644 --- a/src/slic3r/GUI/3DScene.cpp +++ b/src/slic3r/GUI/3DScene.cpp @@ -953,17 +953,17 @@ void GLVolumeCollection::reset_outside_state() void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* config) { - using ColorItem = std::pair; + using ColorItem = std::pair; std::vector colors; if (static_cast(config->opt_int("printer_technology")) == ptSLA) { const std::string& txt_color = config->opt_string("material_colour").empty() ? print_config_def.get("material_colour")->get_default_value()->value : config->opt_string("material_colour"); - ColorRGBA rgba; - if (decode_color(txt_color, rgba)) - colors.push_back({ txt_color, rgba }); -} + ColorRGB rgb; + if (decode_color(txt_color, rgb)) + colors.push_back({ txt_color, rgb }); + } else { const ConfigOptionStrings* extruders_opt = dynamic_cast(config->option("extruder_colour")); if (extruders_opt == nullptr) @@ -980,13 +980,13 @@ void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* con for (unsigned int i = 0; i < colors_count; ++i) { const std::string& ext_color = config->opt_string("extruder_colour", i); - ColorRGBA rgba; - if (decode_color(ext_color, rgba)) - colors[i] = { ext_color, rgba }; + ColorRGB rgb; + if (decode_color(ext_color, rgb)) + colors[i] = { ext_color, rgb }; else { const std::string& fil_color = config->opt_string("filament_colour", i); - if (decode_color(fil_color, rgba)) - colors[i] = { fil_color, rgba }; + if (decode_color(fil_color, rgb)) + colors[i] = { fil_color, rgb }; } } } @@ -1001,7 +1001,7 @@ void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* con const ColorItem& color = colors[extruder_id]; if (!color.first.empty()) - volume->color = color.second; + volume->color = to_rgba(color.second, volume->color.a()); } }