diff -r e34d6a30b96d -r 75efc3ba5a56 src/vertexmap.cpp --- a/src/vertexmap.cpp Mon Apr 10 14:46:36 2023 +0300 +++ b/src/vertexmap.cpp Tue Apr 11 11:11:28 2023 +0300 @@ -22,51 +22,50 @@ const glm::vec3& b; }; -inline void edges(const ModelElement& element, std::function fn) +static void edges(const PlainPolygonElement& element, std::function fn) { std::visit(overloaded{ - [fn](const Colored& edge) { + [fn](const LineSegment& edge) { fn(Edge{edge.p1, edge.p2}); }, - [fn](const Colored& triangle) { + [fn](const Triangle& triangle) { fn(Edge{triangle.p1, triangle.p2}); fn(Edge{triangle.p2, triangle.p3}); fn(Edge{triangle.p3, triangle.p1}); }, - [fn](const Colored& quad) { + [fn](const Quadrilateral& quad) { fn(Edge{quad.p1, quad.p2}); fn(Edge{quad.p2, quad.p3}); fn(Edge{quad.p3, quad.p4}); fn(Edge{quad.p4, quad.p1}); }, - [fn](const Colored& cedge) { + [fn](const ConditionalEdge& cedge) { fn(Edge{cedge.p1, cedge.p2}); }, - [](const ModelElement&&){} }, element); } inline void points( - const ModelElement& element, + const PlainPolygonElement& element, std::function fn) { std::visit(overloaded{ - [fn](const Colored& edge) { + [fn](const LineSegment& edge) { fn(edge.p1); fn(edge.p2); }, - [fn](const Colored& triangle) { + [fn](const Triangle& triangle) { fn(triangle.p1); fn(triangle.p2); fn(triangle.p3); }, - [fn](const Colored& quad) { + [fn](const Quadrilateral& quad) { fn(quad.p1); fn(quad.p2); fn(quad.p3); fn(quad.p4); }, - [fn](const Colored& cedge) { + [fn](const ConditionalEdge& cedge) { fn(cedge.p1); fn(cedge.p2); fn(cedge.c1);