diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index d7acc3ec4..a884bce89 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -3859,10 +3859,10 @@ std::string GCode::_before_extrude(const ExtrusionPath &path, const std::string std::string description{ description_in }; - // adjust acceleration, inside the travel to set the deceleration + // adjust acceleration, inside the travel to set the deceleration (unless it's deactivated) double acceleration = get_default_acceleration(m_config); double travel_acceleration = m_writer.get_acceleration(); - { + if(acceleration > 0){ if (this->on_first_layer() && m_config.first_layer_acceleration.value > 0) { acceleration = m_config.first_layer_acceleration.get_abs_value(acceleration); } else if (m_config.perimeter_acceleration.value > 0 && is_perimeter(path.role())) { diff --git a/src/libslic3r/GCodeWriter.hpp b/src/libslic3r/GCodeWriter.hpp index 084b8e4e1..7f14d56f7 100644 --- a/src/libslic3r/GCodeWriter.hpp +++ b/src/libslic3r/GCodeWriter.hpp @@ -21,7 +21,7 @@ public: GCodeWriter() : multiple_extruders(false), m_extrusion_axis("E"), m_tool(nullptr), m_single_extruder_multi_material(false), - m_last_acceleration(0), m_max_acceleration(0), m_last_fan_speed(0), + m_last_acceleration(0), m_current_acceleration(0), m_max_acceleration(0), m_last_fan_speed(0), m_last_bed_temperature(0), m_last_bed_temperature_reached(true), m_lifted(0) {}