fix(build): add Polyline3::is_closed() and fix Point3 reference in Fill.cpp

This commit is contained in:
thysson2701
2026-07-21 15:24:35 +02:00
parent 6d14497ddc
commit f81987e6cc
2 changed files with 5 additions and 3 deletions

View File

@@ -9805,9 +9805,9 @@ static bool top_surface_image_append_recolored_perimeter_path(ExtrusionEntitiesP
};
for (size_t point_idx = 1; point_idx < path.polyline.points.size(); ++point_idx) {
const Point &p0 = path.polyline.points[point_idx - 1];
const Point &p1 = path.polyline.points[point_idx];
const double len_mm = unscale<double>(p0.distance_to(p1));
const Point3 &p0 = path.polyline.points[point_idx - 1];
const Point3 &p1 = path.polyline.points[point_idx];
const double len_mm = unscale<double>(p0.to_point().distance_to(p1.to_point()));
if (!std::isfinite(len_mm) || len_mm <= EPSILON)
continue;
const int steps = std::max(1, int(std::floor(len_mm / min_run_mm)));

View File

@@ -302,6 +302,8 @@ public:
virtual Lines3 lines() const;
bool is_closed() const { return this->points.size() >= 2 && this->points.front() == this->points.back(); }
// Convert to 2D Polyline by dropping Z coordinates
Polyline to_polyline() const;