FIX: modify some default support params in code

1. Modify default values of some supports params, so 3rd party profiles are easier to setup.
3. Fix a bug that organic support may cause crash.

Jira: none

Change-Id: Icae348d8fe5985f4287404e96089198a499283f2
(cherry picked from commit 8889cfc703b72e142f288e525b89c87619f2213c)
This commit is contained in:
Arthur 2023-11-03 15:31:30 +08:00 committed by Lane.Wei
parent 575f188436
commit 134f083bdb
2 changed files with 5 additions and 5 deletions

View File

@ -3010,7 +3010,7 @@ void PrintConfigDef::init_fff_params()
def->tooltip = L("Filament to print support base and raft. \"Default\" means no specific filament for support and current filament is used");
def->min = 0;
def->mode = comSimple;
def->set_default_value(new ConfigOptionInt(1));
def->set_default_value(new ConfigOptionInt(0));
def = this->add("support_interface_not_for_body",coBool);
def->label = L("No interface filament for body");
@ -3043,7 +3043,7 @@ void PrintConfigDef::init_fff_params()
def->min = 0;
// BBS
def->mode = comSimple;
def->set_default_value(new ConfigOptionInt(1));
def->set_default_value(new ConfigOptionInt(0));
auto support_interface_top_layers = def = this->add("support_interface_top_layers", coInt);
def->gui_type = ConfigOptionDef::GUIType::i_enum_open;
@ -3123,7 +3123,7 @@ void PrintConfigDef::init_fff_params()
def->enum_labels.push_back(L("Lightning"));
def->enum_labels.push_back(L("Hollow"));
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionEnum<SupportMaterialPattern>(smpRectilinear));
def->set_default_value(new ConfigOptionEnum<SupportMaterialPattern>(smpDefault));
def = this->add("support_interface_pattern", coEnum);
def->label = L("Interface pattern");
@ -3143,7 +3143,7 @@ void PrintConfigDef::init_fff_params()
def->enum_labels.push_back(L("Rectilinear Interlaced"));
def->enum_labels.push_back(L("Grid"));
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionEnum<SupportMaterialInterfacePattern>(smipRectilinear));
def->set_default_value(new ConfigOptionEnum<SupportMaterialInterfacePattern>(smipAuto));
def = this->add("support_base_pattern_spacing", coFloat);
def->label = L("Base pattern spacing");

View File

@ -3083,7 +3083,7 @@ static void finalize_interface_and_support_areas(
[&](const tbb::blocked_range<size_t> &range) {
for (size_t layer_idx = range.begin(); layer_idx < range.end(); ++ layer_idx) {
// Subtract support lines of the branches from the roof
SupportGeneratorLayer *support_roof = top_contacts[layer_idx];
SupportGeneratorLayer* support_roof = layer_idx < top_contacts.size() ? top_contacts[layer_idx] : nullptr;
Polygons support_roof_polygons;
if (Polygons &src = support_roof_storage[layer_idx]; ! src.empty()) {
if (support_roof != nullptr && ! support_roof->polygons.empty()) {