Fix of Build failed with CGAL 5.5: UserVisitor’ {aka ‘struct priv::Visitor’}

has no member named ‘start_filtering_intersections’
Fixes #9582
Co-authored-by: @hexane360
This commit is contained in:
Vojtech Bubnik 2023-03-03 13:07:32 +01:00
parent 39df7582c0
commit 65ab83d6a9
2 changed files with 17 additions and 19 deletions

View File

@ -1098,7 +1098,13 @@ namespace priv {
/// Track source of intersection /// Track source of intersection
/// Help for anotate inner and outer faces /// Help for anotate inner and outer faces
/// </summary> /// </summary>
struct Visitor { struct Visitor : public CGAL::Polygon_mesh_processing::Corefinement::Default_visitor<CutMesh> {
Visitor(const CutMesh &object, const CutMesh &shape, EdgeShapeMap edge_shape_map,
FaceShapeMap face_shape_map, VertexShapeMap vert_shape_map, bool* is_valid) :
object(object), shape(shape), edge_shape_map(edge_shape_map), face_shape_map(face_shape_map),
vert_shape_map(vert_shape_map), is_valid(is_valid)
{}
const CutMesh &object; const CutMesh &object;
const CutMesh &shape; const CutMesh &shape;
@ -1160,16 +1166,6 @@ struct Visitor {
/// <param name="v">New added vertex</param> /// <param name="v">New added vertex</param>
/// <param name="tm">Affected mesh</param> /// <param name="tm">Affected mesh</param>
void new_vertex_added(std::size_t i_id, VI v, const CutMesh &tm); void new_vertex_added(std::size_t i_id, VI v, const CutMesh &tm);
// Not used visitor functions
void before_subface_creations(FI /* f_old */, CutMesh &/* mesh */){}
void after_subface_created(FI /* f_new */, CutMesh &/* mesh */) {}
void after_subface_creations(CutMesh&) {}
void before_subface_created(CutMesh&) {}
void before_edge_split(HI /* h */, CutMesh& /* tm */) {}
void edge_split(HI /* hnew */, CutMesh& /* tm */) {}
void after_edge_split() {}
void add_retriangulation_edge(HI /* h */, CutMesh& /* tm */) {}
}; };
/// <summary> /// <summary>

View File

@ -848,7 +848,16 @@ TEST_CASE("Emboss extrude cut", "[Emboss-Cut]")
using EcmType = CGAL::internal::Dynamic<MyMesh, ecm_it>; using EcmType = CGAL::internal::Dynamic<MyMesh, ecm_it>;
EcmType ecm = get(d_prop_bool(), cgal_object); EcmType ecm = get(d_prop_bool(), cgal_object);
struct Visitor { struct Visitor : public CGAL::Polygon_mesh_processing::Corefinement::Default_visitor<MyMesh> {
Visitor(const MyMesh &object, const MyMesh &shape,
MyMesh::Property_map<CGAL::SM_Edge_index, IntersectingElemnt> edge_shape_map,
MyMesh::Property_map<CGAL::SM_Face_index, IntersectingElemnt> face_shape_map,
MyMesh::Property_map<CGAL::SM_Face_index, int32_t> face_map,
MyMesh::Property_map<CGAL::SM_Vertex_index, IntersectingElemnt> vert_shape_map) :
object(object), shape(shape), edge_shape_map(edge_shape_map), face_shape_map(face_shape_map),
face_map(face_map), vert_shape_map(vert_shape_map)
{}
const MyMesh &object; const MyMesh &object;
const MyMesh &shape; const MyMesh &shape;
// Properties of the shape mesh: // Properties of the shape mesh:
@ -946,13 +955,6 @@ TEST_CASE("Emboss extrude cut", "[Emboss-Cut]")
assert(glyph->point_index != -1); assert(glyph->point_index != -1);
vert_shape_map[vh] = glyph ? *glyph : IntersectingElemnt{}; vert_shape_map[vh] = glyph ? *glyph : IntersectingElemnt{};
} }
void after_subface_creations(MyMesh&) {}
void before_subface_created(MyMesh&) {}
void before_edge_split(halfedge_descriptor /* h */, MyMesh& /* tm */) {}
void edge_split(halfedge_descriptor /* hnew */, MyMesh& /* tm */) {}
void after_edge_split() {}
void add_retriangulation_edge(halfedge_descriptor /* h */, MyMesh& /* tm */) {}
} visitor{cgal_object, cgal_shape, edge_shape_map, face_shape_map, } visitor{cgal_object, cgal_shape, edge_shape_map, face_shape_map,
face_map, vert_shape_map}; face_map, vert_shape_map};