mirror of
https://git.mirrors.martin98.com/https://github.com/SoftFever/OrcaSlicer.git
synced 2025-08-14 07:45:56 +08:00
fix sandwich mode for Arachene engine
This commit is contained in:
parent
52999ea757
commit
427f197ca9
@ -1310,6 +1310,22 @@ void PerimeterGenerator::process_arachne()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (this->print_config->wall_infill_order == WallInfillOrder::InnerOuterInnerInfill) {
|
||||
if (ordered_extrusions.size() > 1) {
|
||||
std::vector<int> extPs;
|
||||
for (int i = 0; i < ordered_extrusions.size(); ++i) {
|
||||
if (ordered_extrusions[i].extrusion->inset_idx == 0)
|
||||
extPs.push_back(i);
|
||||
}
|
||||
for (int i = 0; i < extPs.size(); ++i) {
|
||||
if (extPs[i] == 0 || (i > 0 && extPs[i] - 1 == extPs[i - 1]))
|
||||
continue;
|
||||
std::swap(ordered_extrusions[extPs[i]], ordered_extrusions[extPs[i] - 1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ExtrusionEntityCollection extrusion_coll = traverse_extrusions(*this, ordered_extrusions); !extrusion_coll.empty())
|
||||
this->loops->append(extrusion_coll);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user