SPE-2256: Fix the issue that we used the old Voronoi graph during the detection of invalid Voronoi diagrams.

This happens because we didn't set a modified flag that is required to be set before we use the new Voronoi graph.
Possibly related to #12385
This commit is contained in:
Lukáš Hejl 2024-04-17 14:10:42 +02:00 committed by Lukas Matena
parent 51e65abc86
commit 2de1f3aa45
2 changed files with 5 additions and 8 deletions

View File

@ -147,6 +147,9 @@ void VoronoiDiagram::copy_to_local(voronoi_diagram_type &voronoi_diagram) {
new_edge.prev(&m_edges[prev_edge_idx]);
}
}
m_voronoi_diagram.clear();
m_is_modified = true;
}
template<typename SegmentIterator>
@ -345,9 +348,6 @@ VoronoiDiagram::try_to_repair_degenerated_voronoi_diagram_by_rotation(const Segm
for (vertex_type &vertex : m_vertices)
vertex.color(0);
m_voronoi_diagram.clear();
m_is_modified = true;
return issue_type;
}

View File

@ -1,12 +1,8 @@
#include <catch2/catch.hpp>
#include <test_utils.hpp>
#include <libslic3r/Polygon.hpp>
#include <libslic3r/Polyline.hpp>
#include <libslic3r/EdgeGrid.hpp>
#include <libslic3r/Geometry.hpp>
#include "libslic3r/Geometry/VoronoiUtilsCgal.hpp"
#include <libslic3r/Geometry/VoronoiOffset.hpp>
#include <libslic3r/Geometry/VoronoiVisualUtils.hpp>
@ -15,7 +11,8 @@
// #define VORONOI_DEBUG_OUT
#ifdef VORONOI_DEBUG_OUT
#include <libslic3r/VoronoiVisualUtils.hpp>
#include <libslic3r/Geometry/VoronoiVisualUtils.hpp>
#include <libslic3r/Utils.hpp>
#endif
using boost::polygon::voronoi_builder;