diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index f3248758ef..57dca539b6 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -1409,11 +1409,12 @@ static std::vector get_path_of_change_filament(const Print& print) else line_out << ch; } + // Strip original wipe tower X/Y even if position unchanged (fixes out of bed moves). + line = line_out.str(); transformed_pos = trans_pos(pos); if (transformed_pos != old_pos || never_skip) { - line = line_out.str(); std::ostringstream oss; oss << std::fixed << std::setprecision(3) << cur_gcode_start; if (transformed_pos.x() != old_pos.x() || never_skip) @@ -1446,7 +1447,7 @@ static std::vector get_path_of_change_filament(const Print& print) } old_pos = Vec2f{-1000.1f, -1000.1f}; pos = tcr.tool_change_start_pos; - transformed_pos = pos; + transformed_pos = trans_pos(pos); } } return gcode_out;