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
path: root/src
diff options
context:
space:
mode:
authorsupermerill <merill@free.fr>2021-12-15 21:13:33 +0300
committersupermerill <merill@free.fr>2021-12-15 21:51:20 +0300
commit053ec48ff12711b4d5a6a75dd472b1e31ad25827 (patch)
treece71c65ce73cc0948d6b8e3b39f9e8d4967ac8a5 /src
parent59747ac40c82195d739f79c63ac11d04750176e3 (diff)
Fix Concentric (Filled) infill: honour gap_fill_min_area
supermerill/SuperSlicer#2052
Diffstat (limited to 'src')
-rw-r--r--src/libslic3r/Fill/FillConcentric.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libslic3r/Fill/FillConcentric.cpp b/src/libslic3r/Fill/FillConcentric.cpp
index c8616f42f..fd3270663 100644
--- a/src/libslic3r/Fill/FillConcentric.cpp
+++ b/src/libslic3r/Fill/FillConcentric.cpp
@@ -78,6 +78,8 @@ FillConcentricWGapFill::fill_surface_extrusion(
const FillParams &params,
ExtrusionEntitiesPtr &out) const {
+ double min_gapfill_area = double(params.flow.scaled_width()) * double(params.flow.scaled_width());
+ if (params.config != nullptr) min_gapfill_area = scale_d(params.config->gap_fill_min_area.get_abs_value(params.flow.width)) * double(params.flow.scaled_width());
// Perform offset.
Slic3r::ExPolygons expp = offset_ex(surface->expolygon, double(scale_(0 - 0.5 * this->get_spacing())));
// Create the infills for each of the regions.
@@ -149,7 +151,7 @@ FillConcentricWGapFill::fill_surface_extrusion(
for (const ExPolygon &ex : gaps_ex) {
//remove too small gaps that are too hard to fill.
//ie one that are smaller than an extrusion with width of min and a length of max.
- if (ex.area() > min*max) {
+ if (ex.area() > min_gapfill_area) {
MedialAxis{ ex, coord_t(max), coord_t(min), coord_t(params.flow.height) }.build(polylines);
}
}