mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-12 01:07:57 -06:00
Enable retraction for support material too, but only when moving away from support islands. #831
This commit is contained in:
parent
bf603b0221
commit
d5537e7797
3 changed files with 23 additions and 13 deletions
|
@ -163,10 +163,11 @@ sub extrude_path {
|
|||
my $gcode = "";
|
||||
|
||||
# skip retract for support material
|
||||
if ($path->role != EXTR_ROLE_SUPPORTMATERIAL) {
|
||||
{
|
||||
# retract if distance from previous position is greater or equal to the one specified by the user
|
||||
my $travel = Slic3r::Line->new($self->last_pos->clone, $path->points->[0]->clone);
|
||||
if ($travel->length >= scale $self->extruder->retract_before_travel) {
|
||||
if ($travel->length >= scale $self->extruder->retract_before_travel
|
||||
&& ($path->role != EXTR_ROLE_SUPPORTMATERIAL || !$self->layer->support_islands_enclose_line($travel))) {
|
||||
# move travel back to original layer coordinates.
|
||||
# note that we're only considering the current object's islands, while we should
|
||||
# build a more complete configuration space
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue