Fixed GLVolumeCollection::update_colors_by_extruder by using ColorRGBs in place of ColorRGBAs
This commit is contained in:
parent
6b02e72987
commit
88521bb839
@ -953,17 +953,17 @@ void GLVolumeCollection::reset_outside_state()
|
|||||||
|
|
||||||
void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* config)
|
void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* config)
|
||||||
{
|
{
|
||||||
using ColorItem = std::pair<std::string, ColorRGBA>;
|
using ColorItem = std::pair<std::string, ColorRGB>;
|
||||||
std::vector<ColorItem> colors;
|
std::vector<ColorItem> colors;
|
||||||
|
|
||||||
if (static_cast<PrinterTechnology>(config->opt_int("printer_technology")) == ptSLA) {
|
if (static_cast<PrinterTechnology>(config->opt_int("printer_technology")) == ptSLA) {
|
||||||
const std::string& txt_color = config->opt_string("material_colour").empty() ?
|
const std::string& txt_color = config->opt_string("material_colour").empty() ?
|
||||||
print_config_def.get("material_colour")->get_default_value<ConfigOptionString>()->value :
|
print_config_def.get("material_colour")->get_default_value<ConfigOptionString>()->value :
|
||||||
config->opt_string("material_colour");
|
config->opt_string("material_colour");
|
||||||
ColorRGBA rgba;
|
ColorRGB rgb;
|
||||||
if (decode_color(txt_color, rgba))
|
if (decode_color(txt_color, rgb))
|
||||||
colors.push_back({ txt_color, rgba });
|
colors.push_back({ txt_color, rgb });
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
const ConfigOptionStrings* extruders_opt = dynamic_cast<const ConfigOptionStrings*>(config->option("extruder_colour"));
|
const ConfigOptionStrings* extruders_opt = dynamic_cast<const ConfigOptionStrings*>(config->option("extruder_colour"));
|
||||||
if (extruders_opt == nullptr)
|
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) {
|
for (unsigned int i = 0; i < colors_count; ++i) {
|
||||||
const std::string& ext_color = config->opt_string("extruder_colour", i);
|
const std::string& ext_color = config->opt_string("extruder_colour", i);
|
||||||
ColorRGBA rgba;
|
ColorRGB rgb;
|
||||||
if (decode_color(ext_color, rgba))
|
if (decode_color(ext_color, rgb))
|
||||||
colors[i] = { ext_color, rgba };
|
colors[i] = { ext_color, rgb };
|
||||||
else {
|
else {
|
||||||
const std::string& fil_color = config->opt_string("filament_colour", i);
|
const std::string& fil_color = config->opt_string("filament_colour", i);
|
||||||
if (decode_color(fil_color, rgba))
|
if (decode_color(fil_color, rgb))
|
||||||
colors[i] = { fil_color, rgba };
|
colors[i] = { fil_color, rgb };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1001,7 +1001,7 @@ void GLVolumeCollection::update_colors_by_extruder(const DynamicPrintConfig* con
|
|||||||
|
|
||||||
const ColorItem& color = colors[extruder_id];
|
const ColorItem& color = colors[extruder_id];
|
||||||
if (!color.first.empty())
|
if (!color.first.empty())
|
||||||
volume->color = color.second;
|
volume->color = to_rgba(color.second, volume->color.a());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user