Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: Corrected monotonic lines not respecting user infill / wall overlap setting #3388

13 changes: 9 additions & 4 deletions src/libslic3r/Fill/FillRectilinear.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3113,10 +3113,15 @@ void FillMonotonicLineWGapFill::fill_surface_extrusion(const Surface* surface, c
params2.dont_adjust = true;

//BBS: always use no overlap expolygons to avoid overflow in top surface
for (const ExPolygon &rectilinear_area : this->no_overlap_expolygons) {
rectilinear_surface.expolygon = rectilinear_area;
fill_surface_by_lines(&rectilinear_surface, params2, polylines_rectilinear);
}
//for (const ExPolygon &rectilinear_area : this->no_overlap_expolygons) {
// rectilinear_surface.expolygon = rectilinear_area;
// fill_surface_by_lines(&rectilinear_surface, params2, polylines_rectilinear);
//}

// Orca: The above causes pockmarks in top layer surfaces with a properly calibrated printer with PA and EM tuned.
// Revert implementation to the prusa slicer approach that respects the infill/wall overlap setting
// while retaining the gap fill logic below. The user can adjust the overlap calue to reduce overflow if needed.
fill_surface_by_lines(surface, params2, polylines_rectilinear);
ExPolygons unextruded_areas;
Flow new_flow = params.flow;
if (!polylines_rectilinear.empty()) {
Expand Down