CGAL / cgal

The public CGAL repository, see the README below
https://github.com/CGAL/cgal#readme
Other
4.99k stars 1.39k forks source link

Merge `graph_traits` classes for all triangulation classes #2815

Closed sloriot closed 5 years ago

sloriot commented 6 years ago

In order to avoid duplicated code, all the graph_traits classes should be replaced by an implementation file (like what I did for OpenMesh).

I don't think there is any difference between all the implementation. @afabri do you agree?

afabri commented 6 years ago

If it works it is a good idea. I am probably to blame for the copies.

MaelRL commented 6 years ago

There are some issues to fix along the way with the property maps (I didn't do it in #2813 for time reasons). The graph_has_property are missing everywhere and the get() for property map is broken for some tags (for example the vertex_point_t with RT2).

afabri commented 6 years ago

@sloriot Why is the #undef in the file graph_traits_OpenMesh.h and not where the #define is?

sloriot commented 6 years ago

similar to interface_macro.h, the macro is defined by the includer.

afabri commented 6 years ago

Triangulation_hierarchy_2/Triangulation_2/Constrained_triangulation_2 has 1/2/3 template parameters, which makes it harder to generalize.

sloriot commented 6 years ago

@afabri didn't you fix that recently?