From 211b8cdc9091acf656a1ca01db114fd354c749bd Mon Sep 17 00:00:00 2001 From: Lukas Matena Date: Wed, 22 Feb 2023 13:49:17 +0100 Subject: [PATCH] Added a marker for the ooze prevention cooldown commands --- src/libslic3r/GCode.cpp | 4 ++++ src/libslic3r/GCode/GCodeProcessor.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index bd4101dc9a..01dd5ee1ce 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -119,10 +119,14 @@ namespace Slic3r { // we assume that heating is always slower than cooling, so no need to block gcode += gcodegen.writer().set_temperature (this->_get_temp(gcodegen) + gcodegen.config().standby_temperature_delta.value, false, extruder_id); + gcode.pop_back(); + gcode += " ;cooldown\n"; } } else { // Use the value from filament settings. That one is absolute, not delta. gcode += gcodegen.writer().set_temperature(filament_idle_temp.get_at(extruder_id), false, extruder_id); + gcode.pop_back(); + gcode += " ;cooldown\n"; } return gcode; diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp index 174f1bbcea..b061ebb082 100644 --- a/src/libslic3r/GCode/GCodeProcessor.cpp +++ b/src/libslic3r/GCode/GCodeProcessor.cpp @@ -4004,7 +4004,7 @@ void GCodeProcessor::post_process() reader.parse_line(line, [&gline](GCodeReader& reader, const GCodeReader::GCodeLine& l) { gline = l; }); float val; - if (gline.has_value('T', val)) { + if (gline.has_value('T', val) && gline.raw().find("cooldown") != std::string::npos) { if (static_cast(val) == tool_number) return std::string("; removed M104\n"); }