mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-08-10 23:35:13 -06:00
ENH: improve auto arranging's wipe tower logic
1. If there is already a wipe tower on current plate, leave it there regardless need_wipe_tower flag. This is useful when we have toolchange custom gcodes. 2. Correct wipe tower pos to prevent it outside bed. Jira: STUDIO-4426 Change-Id: Iedecc7c5fe7ced01533d0a302253841046a7fb42 (cherry picked from commit e8d728e46b12baaf9fb0e87e3d14197ae3616826)
This commit is contained in:
parent
845a397e37
commit
76d073a9ea
3 changed files with 40 additions and 49 deletions
|
@ -725,6 +725,7 @@ public:
|
|||
for (Item itm : items) {
|
||||
if (itm.is_wipe_tower) {
|
||||
starting_point = itm.boundingBox().center();
|
||||
BOOST_LOG_TRIVIAL(debug) << "arrange we have wipe tower, change starting point to: " << starting_point;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -749,15 +750,13 @@ public:
|
|||
if (on_packed)
|
||||
on_packed(ap);
|
||||
BOOST_LOG_TRIVIAL(debug) << "arrange " + last_packed.name + " succeed!"
|
||||
<< ", plate id=" << ap.bed_idx;
|
||||
<< ", plate id=" << ap.bed_idx << ", pos=" << last_packed.translation();
|
||||
}
|
||||
});
|
||||
|
||||
if (progressind) {
|
||||
m_pck.unfitIndicator([this, progressind](std::string name) {
|
||||
BOOST_LOG_TRIVIAL(debug) << "arrange not fit: " + name;
|
||||
});
|
||||
}
|
||||
m_pck.unfitIndicator([this](std::string name) {
|
||||
BOOST_LOG_TRIVIAL(debug) << "arrange progress: " + name;
|
||||
});
|
||||
|
||||
if (stopcond) m_pck.stopCondition(stopcond);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue