Fixing unit tests.
This commit is contained in:
parent
7d4b3f2992
commit
a2de09e11e
@ -33,18 +33,16 @@ void FillPlanePath::_fill_surface_single(
|
|||||||
coord_t(ceil(coordf_t(bounding_box.max.x()) / distance_between_lines)),
|
coord_t(ceil(coordf_t(bounding_box.max.x()) / distance_between_lines)),
|
||||||
coord_t(ceil(coordf_t(bounding_box.max.y()) / distance_between_lines)));
|
coord_t(ceil(coordf_t(bounding_box.max.y()) / distance_between_lines)));
|
||||||
|
|
||||||
Polylines polylines;
|
|
||||||
if (pts.size() >= 2) {
|
if (pts.size() >= 2) {
|
||||||
// Convert points to a polyline, upscale.
|
// Convert points to a polyline, upscale.
|
||||||
polylines.push_back(Polyline());
|
Polylines polylines(1, Polyline());
|
||||||
Polyline &polyline = polylines.back();
|
Polyline &polyline = polylines.front();
|
||||||
polyline.points.reserve(pts.size());
|
polyline.points.reserve(pts.size());
|
||||||
for (const Vec2d &pt : pts)
|
for (const Vec2d &pt : pts)
|
||||||
polyline.points.push_back(Point(
|
polyline.points.emplace_back(
|
||||||
coord_t(floor(pt.x() * distance_between_lines + 0.5)),
|
coord_t(floor(pt.x() * distance_between_lines + 0.5)),
|
||||||
coord_t(floor(pt.y() * distance_between_lines + 0.5))));
|
coord_t(floor(pt.y() * distance_between_lines + 0.5)));
|
||||||
// intersection(polylines_src, offset((Polygons)expolygon, scale_(0.02)), &polylines);
|
polylines = intersection_pl(polylines, expolygon);
|
||||||
polylines = intersection_pl(std::move(polylines), expolygon);
|
|
||||||
Polylines chained;
|
Polylines chained;
|
||||||
if (params.dont_connect() || params.density > 0.5 || polylines.size() <= 1)
|
if (params.dont_connect() || params.density > 0.5 || polylines.size() <= 1)
|
||||||
chained = chain_polylines(std::move(polylines));
|
chained = chain_polylines(std::move(polylines));
|
||||||
|
@ -456,7 +456,7 @@ bool test_if_solid_surface_filled(const ExPolygon& expolygon, double flow_spacin
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Shrink the initial expolygon a bit, this simulates the infill / perimeter overlap that we usually apply.
|
// Shrink the initial expolygon a bit, this simulates the infill / perimeter overlap that we usually apply.
|
||||||
ExPolygons uncovered = diff_ex(offset(expolygon, - float(0.2 * scale_(flow_spacing))), grown_paths, true);
|
ExPolygons uncovered = diff_ex(offset(expolygon, - float(0.2 * scale_(flow_spacing))), grown_paths, ApplySafetyOffset::Yes);
|
||||||
|
|
||||||
// ignore very small dots
|
// ignore very small dots
|
||||||
const double scaled_flow_spacing = std::pow(scale_(flow_spacing), 2);
|
const double scaled_flow_spacing = std::pow(scale_(flow_spacing), 2);
|
||||||
|
Loading…
Reference in New Issue
Block a user