Fix of "Bridging and gap fill are parsed incorrectly when infill is set to 0" #1476

The gap fill was disabled for zero infill.
Now the gap fill is enabled in between the perimeters, but disabled between
the inner-most perimeter and infill in case the infill is set to zero.

Also in case there are multiple infill regions inside a perimeter,
the mutliple infills are considered as non-zero if at least one infill
is non-zero, therefore the gap fill will be added inside the inner-most
perimeter.
This commit is contained in:
bubnikv 2019-09-10 19:03:37 +02:00
parent 84e8081413
commit 246dc64c99
3 changed files with 19 additions and 7 deletions

View file

@ -243,7 +243,8 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig* config)
"infill_speed", "bridge_speed" })
toggle_field(el, have_infill || have_solid_infill);
toggle_field("gap_fill_speed", have_perimeters && have_infill);
// Gap fill is newly allowed in between perimeter lines even for empty infill (see GH #1476).
toggle_field("gap_fill_speed", have_perimeters);
bool have_top_solid_infill = config->opt_int("top_solid_layers") > 0;
for (auto el : { "top_infill_extrusion_width", "top_solid_infill_speed" })