From 612c049660922e9bf527e64f19edf599ec7a70e2 Mon Sep 17 00:00:00 2001 From: remi durand Date: Sat, 1 May 2021 12:18:24 +0200 Subject: [PATCH] Fix fan speed on overhangs supermerill/SuperSlicer#1127 --- src/libslic3r/GCode.cpp | 6 ++++-- src/libslic3r/GCode/CoolingBuffer.cpp | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 2fb86e58b..f00503b58 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -3841,7 +3841,8 @@ std::string GCode::_before_extrude(const ExtrusionPath &path, const std::string std::string comment; if (m_enable_cooling_markers) { - if (is_bridge(path.role())) + if (is_bridge(path.role()) + || path.role() == ExtrusionRole::erOverhangPerimeter) gcode += ";_BRIDGE_FAN_START\n"; else if (ExtrusionRole::erTopSolidInfill == path.role()) gcode += ";_TOP_FAN_START\n"; @@ -3860,7 +3861,8 @@ std::string GCode::_before_extrude(const ExtrusionPath &path, const std::string std::string GCode::_after_extrude(const ExtrusionPath &path) { std::string gcode; if (m_enable_cooling_markers) - if (is_bridge(path.role())) + if (is_bridge(path.role()) + || path.role() == ExtrusionRole::erOverhangPerimeter) gcode += ";_BRIDGE_FAN_END\n"; else if (ExtrusionRole::erTopSolidInfill == path.role()) gcode += ";_TOP_FAN_END\n"; diff --git a/src/libslic3r/GCode/CoolingBuffer.cpp b/src/libslic3r/GCode/CoolingBuffer.cpp index 32d89c21f..e47133cc7 100644 --- a/src/libslic3r/GCode/CoolingBuffer.cpp +++ b/src/libslic3r/GCode/CoolingBuffer.cpp @@ -776,7 +776,7 @@ std::string CoolingBuffer::apply_layer_cooldown( bridge_fan_speed = clamp(0, 255, int(float(bridge_fan_speed) * factor + 0.5f)); } #undef EXTRUDER_CONFIG - // 0 is deprecated for diable: take care of temp settings. + // 0 is deprecated for disable: take care of temp settings. if (bridge_fan_speed == 0) bridge_fan_speed = -1; if (ext_peri_fan_speed == 0) ext_peri_fan_speed = -1; if (top_fan_speed == 0) top_fan_speed = -1;