From e4294cffcefd1c4374d642947c3d972b8932bbb8 Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Wed, 4 Jul 2012 10:35:03 +0200 Subject: [PATCH] Fixed regression causing random extrudates outside the object perimeter --- lib/Slic3r/Layer.pm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/Slic3r/Layer.pm b/lib/Slic3r/Layer.pm index 686df1a9..e0a7b296 100644 --- a/lib/Slic3r/Layer.pm +++ b/lib/Slic3r/Layer.pm @@ -136,10 +136,10 @@ sub make_surfaces { my $self = shift; my ($loops) = @_; - my $safety_offset = scale 0.1; { + my $safety_offset = scale 0.1; # merge everything - my $expolygons = union_ex(safety_offset($loops, $safety_offset)); + my $expolygons = [ map $_->offset_ex(-$safety_offset), @{union_ex(safety_offset($loops, $safety_offset))} ]; Slic3r::debugf " %d surface(s) having %d holes detected from %d polylines\n", scalar(@$expolygons), scalar(map $_->holes, @$expolygons), scalar(@$loops); @@ -158,7 +158,7 @@ sub make_surfaces { push @{$self->slices}, map Slic3r::Surface->new (expolygon => $_, surface_type => S_TYPE_INTERNAL), map $_->offset_ex(+$distance), - $surface->expolygon->offset_ex(-2*$distance - $safety_offset); + $surface->expolygon->offset_ex(-2*$distance); } # now detect thin walls by re-outgrowing offsetted surfaces and subtracting