Prevent tiny extrusion points. #323

This commit is contained in:
Alessandro Ranellucci 2012-05-01 15:23:17 +02:00
parent f063d100f4
commit da43cd70b2

View file

@ -142,14 +142,17 @@ sub make_surfaces {
1,
);
# TODO: remove very small expolygons from diff before attempting to do medial axis
# (benchmark first)
push @{$self->thin_walls},
grep $_,
map $_->medial_axis(scale $Slic3r::flow_width),
@$diff;
Slic3r::debugf " %d thin walls detected\n", scalar(@{$self->thin_walls}) if @{$self->thin_walls};
if (@$diff) {
my $area_threshold = scale($Slic3r::flow_spacing) ** 2;
@$diff = grep $_->area > ($area_threshold), @$diff;
push @{$self->thin_walls},
grep $_,
map $_->medial_axis(scale $Slic3r::flow_width),
@$diff;
Slic3r::debugf " %d thin walls detected\n", scalar(@{$self->thin_walls}) if @{$self->thin_walls};
}
}
if (0) {