Gyroid infill: Lowered the threshold to drop infill line segments.
This commit is contained in:
parent
e5b3af0e53
commit
3e54c0b775
1 changed files with 6 additions and 4 deletions
|
@ -182,12 +182,14 @@ void FillGyroid::_fill_surface_single(
|
||||||
|
|
||||||
polylines = intersection_pl(polylines, to_polygons(expolygon));
|
polylines = intersection_pl(polylines, to_polygons(expolygon));
|
||||||
|
|
||||||
if (! polylines.empty())
|
if (! polylines.empty()) {
|
||||||
// remove too small bits (larger than longer)
|
// Remove very small bits, but be careful to not remove infill lines connecting thin walls!
|
||||||
|
// The infill perimeter lines should be separated by around a single infill line width.
|
||||||
|
const double minlength = scale_(0.8 * this->spacing);
|
||||||
polylines.erase(
|
polylines.erase(
|
||||||
//FIXME what is the small size? Removing tiny extrusions disconnects walls!
|
std::remove_if(polylines.begin(), polylines.end(), [minlength](const Polyline &pl) { return pl.length() < minlength; }),
|
||||||
std::remove_if(polylines.begin(), polylines.end(), [this](const Polyline &pl) { return pl.length() < scale_(this->spacing * 3); }),
|
|
||||||
polylines.end());
|
polylines.end());
|
||||||
|
}
|
||||||
|
|
||||||
if (! polylines.empty()) {
|
if (! polylines.empty()) {
|
||||||
// connect lines
|
// connect lines
|
||||||
|
|
Loading…
Add table
Reference in a new issue