Use Slic3r::ExPolygon::Collection for Layer->slices

This commit is contained in:
Alessandro Ranellucci 2013-07-14 15:06:49 +02:00
parent 7534c1e6d9
commit 13e3a9129c
4 changed files with 21 additions and 4 deletions

View file

@ -16,7 +16,7 @@ has 'height' => (is => 'ro', required => 1); # layer height in unscal
# collection of expolygons generated by slicing the original geometry;
# also known as 'islands' (all regions and surface types are merged here)
has 'slices' => (is => 'rw');
has 'slices' => (is => 'rw', default => sub { Slic3r::ExPolygon::Collection->new });
# ordered collection of extrusion paths to fill surfaces for support material
has 'support_islands' => (is => 'rw');
@ -80,7 +80,8 @@ sub make_slices {
my $self = shift;
my $slices = union_ex([ map $_->p, map @{$_->slices}, @{$self->regions} ]);
$self->slices([ map Slic3r::ExPolygon::XS->new(@$_), @$slices ]);
$self->slices->clear;
$self->slices->append(map Slic3r::ExPolygon::XS->new(@$_), @$slices);
}
sub make_perimeters {