Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Matena <lukasmatena@seznam.cz>2018-06-07 17:19:57 +0300
committerLukas Matena <lukasmatena@seznam.cz>2018-06-07 17:19:57 +0300
commitb6455b66bd7894b8d575ba91524aa93dc306888d (patch)
tree88041b9b448b9786a8b0664a657cbe347975e52a /xs/src/libslic3r/GCode.cpp
parent73452fd79db41286e6c04658edf6b0e15ce8f008 (diff)
Wiping into infill/objects - invalidation of the wipe tower, bugfixes
Diffstat (limited to 'xs/src/libslic3r/GCode.cpp')
-rw-r--r--xs/src/libslic3r/GCode.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/xs/src/libslic3r/GCode.cpp b/xs/src/libslic3r/GCode.cpp
index 92898c820..ce63a374c 100644
--- a/xs/src/libslic3r/GCode.cpp
+++ b/xs/src/libslic3r/GCode.cpp
@@ -1357,7 +1357,7 @@ void GCode::process_layer(
m_avoid_crossing_perimeters.disable_once = true;
}
- if (print.config.wipe_into_infill.value) {
+ {
gcode += "; INFILL WIPING STARTS\n";
if (extruder_id != layer_tools.extruders.front()) { // if this is the first extruder on this layer, there was no toolchange
for (const auto& layer_to_print : layers) { // iterate through all objects
@@ -1373,12 +1373,12 @@ void GCode::process_layer(
overridden.push_back(new_region);
for (ExtrusionEntity *ee : (*layer_to_print.object_layer).regions[region_id]->fills.entities) {
auto *fill = dynamic_cast<ExtrusionEntityCollection*>(ee);
- if (fill->get_extruder_override(copy_id) == (unsigned int)extruder_id)
+ if (fill->get_extruder_override(copy_id) == (int)extruder_id)
overridden.back().infills.append(*fill);
}
for (ExtrusionEntity *ee : (*layer_to_print.object_layer).regions[region_id]->perimeters.entities) {
auto *fill = dynamic_cast<ExtrusionEntityCollection*>(ee);
- if (fill->get_extruder_override(copy_id) == (unsigned int)extruder_id)
+ if (fill->get_extruder_override(copy_id) == (int)extruder_id)
overridden.back().perimeters.append((*fill).entities);
}
}
@@ -2527,12 +2527,13 @@ const std::vector<GCode::ObjectByExtruder::Island::Region>& GCode::ObjectByExtru
by_region_per_copy_cache.push_back(ObjectByExtruder::Island::Region());
//out.back().perimeters.append(reg.perimeters); // we will print all perimeters there are
- if (!reg.infills_per_copy_ids.empty()) {
+ if (!reg.infills_per_copy_ids.empty())
for (unsigned int i=0; i<reg.infills_per_copy_ids[copy].size(); ++i)
by_region_per_copy_cache.back().infills.append(*(reg.infills.entities[reg.infills_per_copy_ids[copy][i]]));
+
+ if (!reg.perimeters_per_copy_ids.empty())
for (unsigned int i=0; i<reg.perimeters_per_copy_ids[copy].size(); ++i)
by_region_per_copy_cache.back().perimeters.append(*(reg.perimeters.entities[reg.perimeters_per_copy_ids[copy][i]]));
- }
}
return by_region_per_copy_cache;
}