diff --git a/lib/Slic3r/Extruder.pm b/lib/Slic3r/Extruder.pm index ed537e3bf..b1fc895b2 100644 --- a/lib/Slic3r/Extruder.pm +++ b/lib/Slic3r/Extruder.pm @@ -8,7 +8,6 @@ has 'z' => (is => 'rw', default => sub {0} ); has 'flow_ratio' => (is => 'rw', default => sub {1}); has 'extrusion_distance' => (is => 'rw', default => sub {0} ); -has 'enable_retraction' => (is => 'rw', default => sub {1} ); has 'retracted' => (is => 'rw', default => sub {1} ); # this spits out some plastic at start has 'lifted' => (is => 'rw', default => sub {0} ); has 'last_pos' => (is => 'rw', default => sub { [0,0] } ); @@ -124,8 +123,7 @@ sub retract { my $self = shift; my %params = @_; - return "" unless $self->enable_retraction - && $Slic3r::retract_length > 0 + return "" unless $Slic3r::retract_length > 0 && !$self->retracted; # prepare moves diff --git a/lib/Slic3r/Print.pm b/lib/Slic3r/Print.pm index dbbb7c635..e709129ac 100644 --- a/lib/Slic3r/Print.pm +++ b/lib/Slic3r/Print.pm @@ -402,11 +402,8 @@ sub export_gcode { # extrude fills for my $fill (@{ $layer->fills }) { - for ($fill->shortest_path($extruder->last_pos)) { - printf $fh $extruder->extrude($_, 'fill'); - $extruder->enable_retraction(0); - } - $extruder->enable_retraction(1); + printf $fh $extruder->extrude($_, 'fill') + for $fill->shortest_path($extruder->last_pos); } }