mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-02 02:21:18 +08:00
23 lines
805 B
C++
23 lines
805 B
C++
#ifndef slic3r_VoronoiUtilsCgal_hpp_
|
|
#define slic3r_VoronoiUtilsCgal_hpp_
|
|
|
|
#include "Voronoi.hpp"
|
|
#include "../Arachne/utils/VoronoiUtils.hpp"
|
|
|
|
namespace Slic3r::Geometry {
|
|
class VoronoiDiagram;
|
|
|
|
class VoronoiUtilsCgal
|
|
{
|
|
public:
|
|
// Check if the Voronoi diagram is planar using CGAL sweeping edge algorithm for enumerating all intersections between lines.
|
|
static bool is_voronoi_diagram_planar_intersection(const VoronoiDiagram &voronoi_diagram);
|
|
|
|
// Check if the Voronoi diagram is planar using verification that all neighboring edges are ordered CCW for each vertex.
|
|
static bool is_voronoi_diagram_planar_angle(const VoronoiDiagram &voronoi_diagram, const std::vector<Arachne::VoronoiUtils::Segment> &segments);
|
|
|
|
};
|
|
} // namespace Slic3r::Geometry
|
|
|
|
#endif // slic3r_VoronoiUtilsCgal_hpp_
|