diff --git a/lib/Slic3r/Config.pm b/lib/Slic3r/Config.pm index e0a066874..faa6fc06e 100644 --- a/lib/Slic3r/Config.pm +++ b/lib/Slic3r/Config.pm @@ -6,7 +6,8 @@ use utf8; use List::Util qw(first); # cemetery of old config settings -our @Ignore = qw(duplicate_x duplicate_y multiply_x multiply_y support_material_tool acceleration); +our @Ignore = qw(duplicate_x duplicate_y multiply_x multiply_y support_material_tool acceleration + adjust_overhang_flow); my $serialize_comma = sub { join ',', @{$_[0]} }; my $serialize_comma_bool = sub { join ',', map $_ // 0, @{$_[0]} }; @@ -594,10 +595,10 @@ our $Options = { type => 'bool', default => 1, }, - 'adjust_overhang_flow' => { - label => 'Adjust overhang flow', - tooltip => 'Experimental option to adjust flow for overhangs (bridge flow will be used).', - cli => 'adjust-overhang-flow!', + 'overhangs' => { + label => 'Detect overhangs', + tooltip => 'Experimental option to adjust flow for overhangs (bridge flow will be used), to apply bridge speed to them and enable fan.', + cli => 'overhangs!', type => 'bool', default => 1, }, diff --git a/lib/Slic3r/GCode.pm b/lib/Slic3r/GCode.pm index 1a8fc9ea8..d4e498a9f 100644 --- a/lib/Slic3r/GCode.pm +++ b/lib/Slic3r/GCode.pm @@ -197,7 +197,7 @@ sub extrude_loop { my @paths = (); # detect overhanging/bridging perimeters - if ($Slic3r::Config->adjust_overhang_flow && $extrusion_path->is_perimeter && @{$self->_layer_overhangs}) { + if ($Slic3r::Config->overhangs && $extrusion_path->is_perimeter && @{$self->_layer_overhangs}) { # get non-overhang paths by subtracting overhangs from the loop push @paths, $extrusion_path->subtract_expolygons($self->_layer_overhangs); diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm index ab0376b24..27ff3c56e 100644 --- a/lib/Slic3r/GUI/Tab.pm +++ b/lib/Slic3r/GUI/Tab.pm @@ -412,7 +412,7 @@ sub build { }, { title => 'Quality (slower slicing)', - options => [qw(extra_perimeters avoid_crossing_perimeters start_perimeters_at_concave_points start_perimeters_at_non_overhang thin_walls adjust_overhang_flow)], + options => [qw(extra_perimeters avoid_crossing_perimeters start_perimeters_at_concave_points start_perimeters_at_non_overhang thin_walls overhangs)], lines => [ Slic3r::GUI::OptionsGroup->single_option_line('extra_perimeters'), Slic3r::GUI::OptionsGroup->single_option_line('avoid_crossing_perimeters'), @@ -421,7 +421,7 @@ sub build { options => [qw(start_perimeters_at_concave_points start_perimeters_at_non_overhang)], }, Slic3r::GUI::OptionsGroup->single_option_line('thin_walls'), - Slic3r::GUI::OptionsGroup->single_option_line('adjust_overhang_flow'), + Slic3r::GUI::OptionsGroup->single_option_line('overhangs'), ], }, { diff --git a/slic3r.pl b/slic3r.pl index 7ee2814ef..ddd6367ae 100755 --- a/slic3r.pl +++ b/slic3r.pl @@ -278,8 +278,8 @@ $j --start-perimeters-at-non-overhang Try to start perimeters at non-overhang points if any (default: no) --thin-walls Detect single-width walls (default: yes) - --adjust-overhang-flow - Experimental option to use bridge flow for overhangs (default: yes) + --overhangs Experimental option to use bridge flow, speed and fan for overhangs + (default: yes) Support material options: --support-material Generate support material for overhangs diff --git a/t/perimeters.t b/t/perimeters.t index 8b83839e3..1dacd31c0 100644 --- a/t/perimeters.t +++ b/t/perimeters.t @@ -103,7 +103,7 @@ use Slic3r::Test; $config->set('fan_below_layer_time', 0); $config->set('slowdown_below_layer_time', 0); $config->set('bridge_fan_speed', 100); - $config->set('adjust_overhang_flow', 1); + $config->set('overhangs', 1); my $print = Slic3r::Test::init_print('overhang', config => $config); my %layer_speeds = (); # print Z => [ speeds ] my $fan_speed = 0;