diff --git a/src/libnest2d/include/libnest2d/placers/nfpplacer.hpp b/src/libnest2d/include/libnest2d/placers/nfpplacer.hpp index 1a6339477..e1e6fba22 100644 --- a/src/libnest2d/include/libnest2d/placers/nfpplacer.hpp +++ b/src/libnest2d/include/libnest2d/placers/nfpplacer.hpp @@ -1125,8 +1125,7 @@ private: for (const Item &item : config_.m_excluded_regions) { excludes.push_back(item.transformedShape()); } for (const Item &item : items_) { if (item.isFixed()) { - if (!(item.is_wipe_tower && !need_wipe_tower)) - excludes.push_back(item.transformedShape()); + excludes.push_back(item.transformedShape()); } } diff --git a/src/slic3r/GUI/Jobs/ArrangeJob.cpp b/src/slic3r/GUI/Jobs/ArrangeJob.cpp index 8e623dae3..4aa1e4860 100644 --- a/src/slic3r/GUI/Jobs/ArrangeJob.cpp +++ b/src/slic3r/GUI/Jobs/ArrangeJob.cpp @@ -259,6 +259,11 @@ void ArrangeJob::prepare_wipe_tower() auto op = current_config.option("enable_prime_tower"); if (op && op->getBool() == false || params.is_seq_print) return; + bool smooth_timelapse = false; + auto sop = current_config.option("timelapse_type"); + if (sop) { smooth_timelapse = sop->getInt() == TimelapseType::tlSmooth; } + if (smooth_timelapse) { need_wipe_tower = true; } + // estimate if we need wipe tower for all plates: // need wipe tower if some object has multiple extruders (has paint-on colors or support material) for (const auto &item : m_selected) {