Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsupermerill <merill@free.fr>2021-10-30 04:33:17 +0300
committersupermerill <merill@free.fr>2021-11-06 15:43:03 +0300
commit0a61223a5383c33b25ae54b16c3e1a9fabbc7f96 (patch)
tree679a5ab11db55aa8d963e9e1b6ef4417b15c298e /src/libslic3r/PrintConfig.cpp
parent4e6753f81aa3bdab6290d41d232451b2dcd14ae1 (diff)
Update to some default values, and various fixes
typos custom gcode panel size min first layer speed now a float.
Diffstat (limited to 'src/libslic3r/PrintConfig.cpp')
-rw-r--r--src/libslic3r/PrintConfig.cpp92
1 files changed, 47 insertions, 45 deletions
diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp
index f11720425..09dd27135 100644
--- a/src/libslic3r/PrintConfig.cpp
+++ b/src/libslic3r/PrintConfig.cpp
@@ -339,7 +339,6 @@ void PrintConfigDef::init_fff_params()
def->label = L("Bridges fan speed");
def->category = OptionCategory::cooling;
def->tooltip = L("This fan speed is enforced during bridges and overhangs. It won't slow down the fan if it's currently running at a higher speed."
- "\nSet to 1 to disable the fan."
"\nSet to -1 to disable this override."
"\nCan only be overriden by disable_fan_first_layers.");
def->sidetext = L("%");
@@ -353,8 +352,8 @@ void PrintConfigDef::init_fff_params()
def->label = L("Infill bridges fan speed");
def->category = OptionCategory::cooling;
def->tooltip = L("This fan speed is enforced during all infill bridges. It won't slow down the fan if it's currently running at a higher speed."
- "\nSet to 1 to disable the fan."
- "\nSet to -1 to disable this override (will take the value of Bridges fan speed)."
+ "\nSet to 1 to follow default speed."
+ "\nSet to -1 to disable this override (internal bridges will use Bridges fan speed)."
"\nCan only be overriden by disable_fan_first_layers.");
def->sidetext = L("%");
def->min = -1;
@@ -691,7 +690,7 @@ void PrintConfigDef::init_fff_params()
def->max = 1000;
def->mode = comExpert;
def->is_vector_extruder = true;
- def->set_default_value(new ConfigOptionInts { 3 });
+ def->set_default_value(new ConfigOptionInts { 1 });
def = this->add("dont_support_bridges", coBool);
def->label = L("Don't support bridges");
@@ -715,7 +714,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm");
def->aliases = { "multiply_distance" };
def->min = 0;
- def->set_default_value(new ConfigOptionFloat(0));
+ def->set_default_value(new ConfigOptionFloat(6));
def = this->add("end_gcode", coString);
def->label = L("End G-code");
@@ -747,7 +746,8 @@ void PrintConfigDef::init_fff_params()
def->label = L("Ensure vertical shell thickness");
def->category = OptionCategory::perimeter;
def->tooltip = L("Add solid infill near sloping surfaces to guarantee the vertical shell thickness "
- "(top+bottom solid layers).");
+ "(top+bottom solid layers)."
+ "\n!! solid_over_perimeters may erase these surfaces !! So you should deactivate it if you want to use this.");
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionBool(false));
@@ -884,7 +884,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(105, true, false));
def = this->add("external_perimeter_extrusion_spacing", coFloatOrPercent);
def->label = L("External perimeters");
@@ -1161,7 +1161,7 @@ void PrintConfigDef::init_fff_params()
def = this->add("extruder_colour", coStrings);
def->label = L("Extruder Color");
def->category = OptionCategory::extruders;
- def->tooltip = L("This is only used in the Slic3r interface as a visual help.");
+ def->tooltip = L("This is only used in Slic3r interface as a visual help.");
def->gui_type = "color";
// Empty string means no color assigned yet.
def->mode = comAdvanced;
@@ -1249,7 +1249,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
def = this->add("extrusion_spacing", coFloatOrPercent);
def->label = L("Default extrusion spacing");
@@ -1263,7 +1263,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
+ def->set_default_value(new ConfigOptionFloatOrPercent(100, true, false));
def = this->add("fan_always_on", coBools);
def->label = L("Keep fan always on");
@@ -1272,7 +1272,7 @@ void PrintConfigDef::init_fff_params()
" Useful for PLA, harmful for ABS.");
def->mode = comSimple;
def->is_vector_extruder = true;
- def->set_default_value(new ConfigOptionBools{ false });
+ def->set_default_value(new ConfigOptionBools{ true });
def = this->add("fan_below_layer_time", coInts);
def->label = L("Enable fan if layer print time is below");
@@ -1901,7 +1901,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(140, true));
+ def->set_default_value(new ConfigOptionFloatOrPercent(140, true, false));
def = this->add("first_layer_extrusion_spacing", coFloatOrPercent);
def->label = L("First layer");
@@ -1935,11 +1935,9 @@ void PrintConfigDef::init_fff_params()
def->label = L("Max");
def->full_label = L("Default first layer speed");
def->category = OptionCategory::speed;
- def->tooltip = L("If expressed as absolute value in mm/s, this speed will be applied to all the print moves "
- "but infill of the first layer, it can be overwritten by the 'default' (default depends of the type of the path) "
- "speed if it's lower than that. If expressed as a percentage "
- "it will scale the current speed."
- "\nSet it at 100% to remove any first layer speed modification (with first_layer_infill_speed and first_layer_speed_min).");
+ def->tooltip = L("If expressed as absolute value in mm/s, this speed will be applied as a maximum to all the print moves (but infill) of the first layer."
+ "\nIf expressed as a percentage it will scale the current speed."
+ "\nSet it at 100% to remove any first layer speed modification (but for infill).");
def->sidetext = L("mm/s or %");
def->ratio_over = "depends";
def->min = 0;
@@ -1950,29 +1948,25 @@ void PrintConfigDef::init_fff_params()
def->label = L("Infill");
def->full_label = L("Infill first layer speed");
def->category = OptionCategory::speed;
- def->tooltip = L("If expressed as absolute value in mm/s, this speed will be applied to infill moves "
- "of the first layer, it can be overwritten by the 'default' (solid infill or infill if not bottom) "
- "speed if it's lower than that. If expressed as a percentage "
- "(for example: 40%) it will scale the current infill speed.");
+ def->tooltip = L("If expressed as absolute value in mm/s, this speed will be applied as a maximum for all infill print moves of the first layer."
+ "\nIf expressed as a percentage it will scale the current infill speed."
+ "\nSet it at 100% to remove any infill first layer speed modification.");
def->sidetext = L("mm/s or %");
def->ratio_over = "depends";
def->min = 0;
def->mode = comExpert;
def->set_default_value(new ConfigOptionFloatOrPercent(30, false));
- def = this->add("first_layer_min_speed", coFloatOrPercent);
+ def = this->add("first_layer_min_speed", coFloat);
def->label = L("Min");
def->full_label = L("Min first layer speed");
def->category = OptionCategory::speed;
- def->tooltip = L("If expressed as absolute value in mm/s, this speed will be applied to all the print moves"
- ", it can be overwritten by the 'default' (default depends of the type of the path) speed if it's higher than that."
- " If expressed as a percentage it will scale the current speed."
+ def->tooltip = L("Minimum speed when printing the first layer."
"\nSet zero to disable.");
- def->sidetext = L("mm/s or %");
- def->ratio_over = "depends";
+ def->sidetext = L("mm/s");
def->min = 0;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloat(0));
def = this->add("first_layer_temperature", coInts);
def->label = L("First layer");
@@ -1996,7 +1990,7 @@ void PrintConfigDef::init_fff_params()
def->max = 1000;
def->mode = comExpert;
def->is_vector_extruder = true;
- def->set_default_value(new ConfigOptionInts { 0 });
+ def->set_default_value(new ConfigOptionInts { 4 });
def = this->add("gap_fill", coBool);
def->label = L("Gap fill");
@@ -2013,7 +2007,7 @@ void PrintConfigDef::init_fff_params()
def->category = OptionCategory::perimeter;
def->tooltip = L("All gaps, between the last perimeter and the infill, which are thinner than a perimeter will be filled by gapfill.");
def->mode = comExpert;
- def->set_default_value(new ConfigOptionBool{true });
+ def->set_default_value(new ConfigOptionBool(false));
def = this->add("gap_fill_min_area", coFloatOrPercent);
def->label = L("Min surface");
@@ -2066,7 +2060,7 @@ void PrintConfigDef::init_fff_params()
def->tooltip = L("All characters that are written here will be replaced by '_' when writing the gcode file name."
"\nIf the first charater is '[' or '(', then this field will be considered as a regexp (enter '[^a-zA-Z0-9]' to only use ascii char).");
def->mode = comExpert;
- def->set_default_value(new ConfigOptionString(""));
+ def->set_default_value(new ConfigOptionString("[<>:\"/\\\\|?*]"));
def = this->add("gcode_flavor", coEnum);
def->label = L("G-code flavor");
@@ -2102,7 +2096,7 @@ void PrintConfigDef::init_fff_params()
def->enum_labels.push_back("Lerdge");
def->enum_labels.push_back(L("No extrusion"));
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionEnum<GCodeFlavor>(gcfSprinter));
+ def->set_default_value(new ConfigOptionEnum<GCodeFlavor>(gcfMarlin));
def = this->add("gcode_filename_illegal_char", coString);
def->label = L("Illegal characters");
@@ -2341,7 +2335,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
def = this->add("infill_extrusion_spacing", coFloatOrPercent);
def->label = L("Infill");
@@ -2356,7 +2350,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
+ def->set_default_value(new ConfigOptionFloatOrPercent(100, true, false));
def = this->add("infill_first", coBool);
def->label = L("Infill before perimeters");
@@ -2519,7 +2513,7 @@ void PrintConfigDef::init_fff_params()
def = this->add("remaining_times", coBool);
def->label = L("Supports remaining times");
def->category = OptionCategory::firmware;
- def->tooltip = L("Emit somethign at 1 minute intervals into the G-code to let the firmware show accurate remaining time.");
+ def->tooltip = L("Emit something at 1 minute intervals into the G-code to let the firmware show accurate remaining time.");
def->mode = comExpert;
def->set_default_value(new ConfigOptionBool(false));
@@ -3095,7 +3089,8 @@ void PrintConfigDef::init_fff_params()
def->full_label = L("Round corners for perimeters");
def->category = OptionCategory::perimeter;
def->tooltip = L("Internal perimeters will go around sharp corners by turning around instead of making the same sharp corner."
- " This can help when there are visible holes in sharp corners on perimeters");
+ " This can help when there are visible holes in sharp corners on perimeters. It also help to print the letters on the benchy stern."
+ "\nCan incur some more processing time, and corners are a bit less sharp.");
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionBool(false));
@@ -3124,7 +3119,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
def = this->add("perimeter_extrusion_spacing", coFloatOrPercent);
def->label = L("Perimeters");
@@ -3139,7 +3134,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
+ def->set_default_value(new ConfigOptionFloatOrPercent(100, true, false));
def = this->add("perimeter_speed", coFloat);
def->label = L("Internal");
@@ -3437,7 +3432,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("%");
def->min = 0;
def->mode = comExpert;
- def->set_default_value(new ConfigOptionPercent(100));
+ def->set_default_value(new ConfigOptionPercent(80));
def = this->add("seam_travel_cost", coPercent);
def->label = L("Travel cost");
@@ -3447,7 +3442,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("%");
def->min = 0;
def->mode = comExpert;
- def->set_default_value(new ConfigOptionPercent(100));
+ def->set_default_value(new ConfigOptionPercent(20));
def = this->add("seam_gap", coFloatsOrPercents);
def->label = L("Seam gap");
@@ -3696,7 +3691,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
def = this->add("solid_infill_extrusion_spacing", coFloatOrPercent);
def->label = L("Solid spacing");
@@ -3711,7 +3706,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false, true));
+ def->set_default_value(new ConfigOptionFloatOrPercent(100, true, false));
def = this->add("solid_infill_speed", coFloatOrPercent);
def->label = L("Solid");
@@ -3878,11 +3873,12 @@ void PrintConfigDef::init_fff_params()
def->category = OptionCategory::perimeter;
def->tooltip = L("When you have a medium/hight number of top/bottom solid layers, and a low/medium of perimeters,"
" then it have to put some solid infill inside the part to have enough solid layers."
- "\nBy setting this to somethign higher than 0, you can remove this 'inside filling'."
+ "\nBy setting this to something higher than 0, you can remove this 'inside filling'."
" This number allow to keep some if there is a low number of perimeter over the void."
"\nIf this setting is equal or higher than the top/bottom solid layer count, it won't evict anything."
"\nIf this setting is set to 1, it will evict all solid fill are are only over perimeters."
- "\nSet zero to disable.");
+ "\nSet zero to disable."
+ "\n!! ensure_vertical_shell_thickness may be erased by this setting !! You may want to deactivate at least one of the two.");
def->min = 0;
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionInt(2));
@@ -4299,7 +4295,7 @@ void PrintConfigDef::init_fff_params()
def->precision = 6;
def->can_phony = true;
def->mode = comAdvanced;
- def->set_default_value(new ConfigOptionFloatOrPercent(0, false));
+ def->set_default_value(new ConfigOptionFloatOrPercent(105, true, false));
def = this->add("top_infill_extrusion_spacing", coFloatOrPercent);
def->label = L("Top solid spacing");
@@ -5680,6 +5676,8 @@ void PrintConfigDef::handle_legacy(t_config_option_key &opt_key, std::string &va
value = "5";
}
}
+ if ("first_layer_min_speed" == opt_key && value.back() == '%')
+ value = value.substr(0, value.length() - 1); //no percent.
// Ignore the following obsolete configuration keys:
static std::set<std::string> ignore = {
@@ -5737,6 +5735,10 @@ std::map<std::string,std::string> PrintConfigDef::from_prusa(t_config_option_key
if(value == "0")
output["infill_connection"] = "notconnected";
}
+ if ("first_layer_speed" == opt_key) {
+ output["first_layer_min_speed"] = value;
+ output["first_layer_infill_speed"] = value;
+ }
return output;
}