From 345536e07ff9afa40e6c4082b7143dd4d2f82583 Mon Sep 17 00:00:00 2001 From: "qing.zhang" Date: Wed, 10 May 2023 09:35:01 +0800 Subject: [PATCH] ENH: optimize the process of top-one-wall Signed-off-by: qing.zhang Change-Id: Ieee51f872bfbe9d0a56f2231b47a0381aa5b5896 --- src/libslic3r/PerimeterGenerator.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp index 093e47dc9..1b5b50752 100644 --- a/src/libslic3r/PerimeterGenerator.cpp +++ b/src/libslic3r/PerimeterGenerator.cpp @@ -998,14 +998,13 @@ void PerimeterGenerator::process_classic() //don't takes into account too thin areas double min_width_top_surface = std::max(double(ext_perimeter_spacing / 2 + 10), 1.0 * (double(perimeter_width))); - Polygons grown_upper_slices = offset(*this->upper_slices, min_width_top_surface); - //BBS: get boungding box of last BoundingBox last_box = get_extents(last); last_box.offset(SCALED_EPSILON); // BBS: get the Polygons upper the polygon this layer - Polygons upper_polygons_series_clipped = ClipperUtils::clip_clipper_polygons_with_subject_bbox(grown_upper_slices, last_box); + Polygons upper_polygons_series_clipped = ClipperUtils::clip_clipper_polygons_with_subject_bbox(*this->upper_slices, last_box); + upper_polygons_series_clipped = offset(upper_polygons_series_clipped, min_width_top_surface); //set the clip to a virtual "second perimeter" fill_clip = offset_ex(last, -double(ext_perimeter_spacing));