diff options
-rw-r--r-- | README.markdown | 1 | ||||
-rw-r--r-- | lib/Slic3r/Config.pm | 7 | ||||
-rw-r--r-- | lib/Slic3r/GUI/Tab.pm | 2 | ||||
-rw-r--r-- | lib/Slic3r/Print.pm | 3 | ||||
-rwxr-xr-x | slic3r.pl | 1 |
5 files changed, 12 insertions, 2 deletions
diff --git a/README.markdown b/README.markdown index 5a8a1ba54..5015e2314 100644 --- a/README.markdown +++ b/README.markdown @@ -205,6 +205,7 @@ The author of the Silk icon set is Mark James. (mm^2, default: 70) --infill-only-where-needed Only infill under ceilings (default: no) + --infill-first Make infill before perimeters (default: no) Support material options: --support-material Generate support material for overhangs diff --git a/lib/Slic3r/Config.pm b/lib/Slic3r/Config.pm index 7dee230ac..5bd91a288 100644 --- a/lib/Slic3r/Config.pm +++ b/lib/Slic3r/Config.pm @@ -395,6 +395,13 @@ our $Options = { type => 'bool', default => 0, }, + 'infill_first' => { + label => 'Infill before perimeters', + tooltip => 'This option will switch the print order of perimeters and infill, making the latter first.', + cli => 'infill-first!', + type => 'bool', + default => 0, + }, # flow options 'extrusion_width' => { diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm index 0463fb041..35637c886 100644 --- a/lib/Slic3r/GUI/Tab.pm +++ b/lib/Slic3r/GUI/Tab.pm @@ -419,7 +419,7 @@ sub build { { title => 'Advanced', options => [qw(infill_every_layers infill_only_where_needed solid_infill_every_layers fill_angle - solid_infill_below_area only_retract_when_crossing_perimeters)], + solid_infill_below_area only_retract_when_crossing_perimeters infill_first)], }, ]); diff --git a/lib/Slic3r/Print.pm b/lib/Slic3r/Print.pm index 727f46a8d..027202867 100644 --- a/lib/Slic3r/Print.pm +++ b/lib/Slic3r/Print.pm @@ -909,7 +909,8 @@ sub write_gcode { }; # give priority to infill if we were already using its extruder - if ($gcodegen->multiple_extruders && $region->extruders->{infill} eq $gcodegen->extruder) { + if ($Slic3r::Config->infill_first + || ($gcodegen->multiple_extruders && $region->extruders->{infill} eq $gcodegen->extruder)) { $extrude_fills->(); $extrude_perimeters->(); } else { @@ -258,6 +258,7 @@ $j (mm^2, default: $config->{solid_infill_below_area}) --infill-only-where-needed Only infill under ceilings (default: no) + --infill-first Make infill before perimeters (default: no) Support material options: --support-material Generate support material for overhangs |