WIP: Monotonous infill
This commit is contained in:
parent
03eb5ffcd5
commit
e390ebc95c
2 changed files with 473 additions and 370 deletions
File diff suppressed because it is too large
Load diff
|
@ -3439,10 +3439,13 @@ void GCode::ObjectByExtruder::Island::Region::append(const Type type, const Extr
|
||||||
|
|
||||||
// First we append the entities, there are eec->entities.size() of them:
|
// First we append the entities, there are eec->entities.size() of them:
|
||||||
size_t old_size = perimeters_or_infills->size();
|
size_t old_size = perimeters_or_infills->size();
|
||||||
size_t new_size = old_size + eec->entities.size();
|
size_t new_size = old_size + (eec->can_reverse() ? eec->entities.size() : 1);
|
||||||
perimeters_or_infills->reserve(new_size);
|
perimeters_or_infills->reserve(new_size);
|
||||||
for (auto* ee : eec->entities)
|
if (eec->can_reverse()) {
|
||||||
perimeters_or_infills->emplace_back(ee);
|
for (auto* ee : eec->entities)
|
||||||
|
perimeters_or_infills->emplace_back(ee);
|
||||||
|
} else
|
||||||
|
perimeters_or_infills->emplace_back(const_cast<ExtrusionEntityCollection*>(eec));
|
||||||
|
|
||||||
if (copies_extruder != nullptr) {
|
if (copies_extruder != nullptr) {
|
||||||
// Don't reallocate overrides if not needed.
|
// Don't reallocate overrides if not needed.
|
||||||
|
|
Loading…
Reference in a new issue