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

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" })