diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp index 7a495edab..7649fea9e 100644 --- a/src/libslic3r/PerimeterGenerator.cpp +++ b/src/libslic3r/PerimeterGenerator.cpp @@ -394,8 +394,8 @@ void PerimeterGenerator::process() for (const Surface &surface : this->slices->surfaces) { // detect how many perimeters must be generated for this island int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops - //BBS: force the topmost layer to be one wall - if (loop_number > 0 && this->upper_slices == nullptr) + //BBS: set the topmost layer to be one wall + if (loop_number > 0 && config->only_one_wall_top && this->upper_slices == nullptr) loop_number = 0; ExPolygons last = union_ex(surface.expolygon.simplify_p(surface_simplify_resolution));