From d110541e12040ab11f6a2d300c331135dd945ff5 Mon Sep 17 00:00:00 2001 From: tamasmeszaros Date: Mon, 4 Dec 2023 11:16:35 +0100 Subject: [PATCH] Fixing issue with aligning to unprintable objects when doing shift+a --- src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp b/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp index 4344bdc8d4..aedc8fb71b 100644 --- a/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp +++ b/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp @@ -118,21 +118,13 @@ ArrangeTask::process_native(Ctl &ctl) } subctl{ctl, *this}; - auto fixed_items = printable.unselected; - - // static (unselected) unprintable objects should not be overlapped by - // movable and printable objects - std::copy(unprintable.unselected.begin(), - unprintable.unselected.end(), - std::back_inserter(fixed_items)); - - arranger->arrange(printable.selected, fixed_items, bed, subctl); + arranger->arrange(printable.selected, printable.unselected, bed, subctl); std::vector printable_bed_indices = get_bed_indices(crange(printable.selected), crange(printable.unselected)); // If there are no printables, leave the physical bed empty - constexpr int SearchFrom = 1; + static constexpr int SearchFrom = 1; // Unprintable items should go to the first logical (!) bed not containing // any printable items