New --solid-infill-extruder option. Includes a refactoring of the strategy used to order layer extrusions according to their extruder and island; toolchanges and travel moves should be more optimized now. #618

This commit is contained in:
Alessandro Ranellucci 2014-12-17 00:34:00 +01:00
parent d9cffeca4a
commit e79aa2e81c
25 changed files with 186 additions and 95 deletions

View file

@ -26,7 +26,10 @@ my $loop = Slic3r::ExtrusionLoop->new_from_paths(
),
);
my $collection = Slic3r::ExtrusionPath::Collection->new($path);
my $collection = Slic3r::ExtrusionPath::Collection->new(
Slic3r::ExtrusionPath::EXTR_ROLE_FILL,
$path,
);
isa_ok $collection, 'Slic3r::ExtrusionPath::Collection', 'collection object with items in constructor';
ok !$collection->no_sort, 'no_sort is false by default';
@ -55,6 +58,7 @@ is scalar(@{$collection->[1]}), 1, 'appended collection was duplicated';
{
my $collection = Slic3r::ExtrusionPath::Collection->new(
Slic3r::ExtrusionPath::EXTR_ROLE_FILL,
map Slic3r::ExtrusionPath->new(polyline => $_, role => 0, mm3_per_mm => 1),
Slic3r::Polyline->new([0,15], [0,18], [0,20]),
Slic3r::Polyline->new([0,10], [0,8], [0,5]),
@ -71,6 +75,7 @@ is scalar(@{$collection->[1]}), 1, 'appended collection was duplicated';
{
my $collection = Slic3r::ExtrusionPath::Collection->new(
Slic3r::ExtrusionPath::EXTR_ROLE_FILL,
map Slic3r::ExtrusionPath->new(polyline => $_, role => 0, mm3_per_mm => 1),
Slic3r::Polyline->new([15,0], [10,0], [4,0]),
Slic3r::Polyline->new([10,5], [15,5], [20,5]),