From b8e173aa305c705cecdee5c2ac700908eaab4e75 Mon Sep 17 00:00:00 2001 From: supermerill Date: Wed, 3 Nov 2021 19:57:50 +0100 Subject: [PATCH] Add ironing to "lift only on top surfaces" it's now "lift only on top & ironing surfaces" supermerill/SuperSlicer#1773 --- src/libslic3r/GCode.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 76e6e4516..7fc592643 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -4186,9 +4186,9 @@ std::string GCode::retract(bool toolchange) length is honored in case wipe path was too short. */ gcode += toolchange ? m_writer.retract_for_toolchange() : m_writer.retract(); bool need_lift = !m_writer.tool_is_extruder() || toolchange || (BOOL_EXTRUDER_CONFIG(retract_lift_first_layer) && m_config.print_retract_lift.value != 0 && this->m_layer_index == 0); - bool last_fill_extusion_role_top_infill = (this->m_last_extrusion_role == ExtrusionRole::erTopSolidInfill); + bool last_fill_extusion_role_top_infill = (this->m_last_extrusion_role == ExtrusionRole::erTopSolidInfill || this->m_last_extrusion_role == ExtrusionRole::erIroning); if(this->m_last_extrusion_role == ExtrusionRole::erGapFill) - last_fill_extusion_role_top_infill = (this->m_last_notgapfill_extrusion_role == ExtrusionRole::erTopSolidInfill); + last_fill_extusion_role_top_infill = (this->m_last_notgapfill_extrusion_role == ExtrusionRole::erTopSolidInfill || this->m_last_notgapfill_extrusion_role == ExtrusionRole::erIroning); if (!need_lift && m_config.print_retract_lift.value != 0) { if (EXTRUDER_CONFIG_WITH_DEFAULT(retract_lift_top, "") == "Not on top") need_lift = !last_fill_extusion_role_top_infill;