From 2d185d82b81262702d819aa7fb78e95efec26f9b Mon Sep 17 00:00:00 2001 From: Noisyfox Date: Sun, 15 Oct 2023 22:04:55 +0800 Subject: [PATCH] Support a special case that treat every layer as steep overhang --- src/libslic3r/PerimeterGenerator.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp index ce0bcc73e60..890d6378985 100644 --- a/src/libslic3r/PerimeterGenerator.cpp +++ b/src/libslic3r/PerimeterGenerator.cpp @@ -229,6 +229,17 @@ static bool detect_steep_overhang(bool is_contour, bool &steep_overhang_contour, bool &steep_overhang_hole) { + // Special case: reverse on every odd layer + if (overhang_steep_width < EPSILON) { + if (is_contour) { + steep_overhang_contour = true; + } else { + steep_overhang_hole = true; + } + + return true; + } + Polygons lower_slcier_chopped = ClipperUtils::clip_clipper_polygons_with_subject_bbox(*lower_slices, extrusion_bboxs, true); // All we need to check is whether we have lines outside `overhang_steep_width`