Fix regression causing retraction restarts to ignore extrusion_axis. Includes regression test. #1547
This commit is contained in:
parent
97c65bac90
commit
5217bc370a
2 changed files with 8 additions and 2 deletions
|
@ -546,7 +546,8 @@ sub unretract {
|
|||
$gcode .= "G11 ; unretract\n";
|
||||
} elsif ($self->config->extrusion_axis) {
|
||||
# use G1 instead of G0 because G0 will blend the restart with the previous travel move
|
||||
$gcode .= sprintf "G1 E%.5f F%.3f",
|
||||
$gcode .= sprintf "G1 %s%.5f F%.3f",
|
||||
$self->config->extrusion_axis,
|
||||
$self->extruder->extrude($to_unretract),
|
||||
$self->extruder->retract_speed_mm_min;
|
||||
$gcode .= " ; compensate retraction" if $self->config->gcode_comments;
|
||||
|
|
|
@ -46,8 +46,13 @@ use Slic3r::Test;
|
|||
my $config = Slic3r::Config->new_from_defaults;
|
||||
$config->set('complete_objects', 1);
|
||||
$config->set('duplicate', 2);
|
||||
$config->set('extrusion_axis', 'A');
|
||||
my $print = Slic3r::Test::init_print('20mm_cube', config => $config);
|
||||
ok Slic3r::Test::gcode($print), "complete_objects";
|
||||
ok my $gcode = Slic3r::Test::gcode($print), "complete_objects";
|
||||
Slic3r::GCode::Reader->new->parse($gcode, sub {
|
||||
my ($self, $cmd, $args, $info) = @_;
|
||||
fail 'unexpected E argument' if defined $args->{E};
|
||||
});
|
||||
}
|
||||
|
||||
__END__
|
||||
|
|
Loading…
Reference in a new issue