From 49f327f0e0c608401060a33d5bffa438bc1985bd Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Sat, 26 Mar 2016 12:24:15 +0100 Subject: [PATCH] Fixed gap fill filtering. #2781 --- lib/Slic3r/Layer/PerimeterGenerator.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/Slic3r/Layer/PerimeterGenerator.pm b/lib/Slic3r/Layer/PerimeterGenerator.pm index 64d6dd6b39..096b0bb25a 100644 --- a/lib/Slic3r/Layer/PerimeterGenerator.pm +++ b/lib/Slic3r/Layer/PerimeterGenerator.pm @@ -66,7 +66,6 @@ sub process { # solid infill my $ispacing = $self->solid_infill_flow->scaled_spacing; - my $gap_area_threshold = $pwidth ** 2; # Calculate the minimum required spacing between two adjacent traces. # This should be equal to the nominal flow spacing but we experiment @@ -176,7 +175,7 @@ sub process { offset(\@last, -0.5*$distance), offset(\@offsets, +0.5*$distance + 10), # safety offset ); - push @gaps, map $_->clone, map @$_, grep abs($_->area) >= $gap_area_threshold, @$diff; + push @gaps, map $_->clone, map @$_, @$diff; } } @@ -484,6 +483,7 @@ sub _fill_gaps { my @entities = (); foreach my $polyline (@polylines) { + next if $polyline->length < scale($w*2); #if ($polylines[$i]->isa('Slic3r::Polygon')) { # my $loop = Slic3r::ExtrusionLoop->new; # $loop->append(Slic3r::ExtrusionPath->new(polyline => $polylines[$i]->split_at_first_point, %path_args));