diff --git a/Surface_mesh_topology/examples/Surface_mesh_topology/draw_facewidth.h b/Surface_mesh_topology/examples/Surface_mesh_topology/draw_facewidth.h index c23906f10b3..d08955e2622 100644 --- a/Surface_mesh_topology/examples/Surface_mesh_topology/draw_facewidth.h +++ b/Surface_mesh_topology/examples/Surface_mesh_topology/draw_facewidth.h @@ -8,7 +8,7 @@ #include template -struct Facewidth_draw_functor : public CGAL::DefaultDrawingFunctorLCC +struct Facewidth_draw_functor //: public CGAL::DefaultDrawingFunctorLCC { Facewidth_draw_functor(typename ALCC::size_type amark1, typename ALCC::size_type amark2) : m_vertex_mark(amark1), m_face_mark(amark2) diff --git a/Surface_mesh_topology/include/CGAL/draw_face_graph_with_paths.h b/Surface_mesh_topology/include/CGAL/draw_face_graph_with_paths.h index 0e7a06bc8d2..e448968ec62 100644 --- a/Surface_mesh_topology/include/CGAL/draw_face_graph_with_paths.h +++ b/Surface_mesh_topology/include/CGAL/draw_face_graph_with_paths.h @@ -32,15 +32,13 @@ namespace CGAL { -namespace draw_function_for_face_graph_with_paths + +namespace draw_function_for_lcc { - -typedef CGAL::Exact_predicates_inexact_constructions_kernel Local_kernel; -typedef Local_kernel::Point_3 Local_point; -typedef Local_kernel::Vector_3 Local_vector; - -template -struct LCC_geom_utils; + // We need to re-use the namespace draw_function_for_lcc because we want to specialize + // the previous struct LCC_geom_utils +// template +// struct LCC_geom_utils; // Specialisation for face graph; otherwise use the LCC_geom_utils of LCC. template @@ -88,17 +86,26 @@ struct LCC_geom_utils, Local_kernel, 3> ++nb; } - if ( nb<2 ) return internal::Geom_utils + if ( nb<2 ) return draw_function_for_lcc::LCC_geom_utils ::Kernel, Local_kernel>:: get_local_vector(normal); - return internal::Geom_utils + return draw_function_for_lcc::LCC_geom_utils ::Kernel, Local_kernel>:: get_local_vector(typename Get_traits::Kernel:: Construct_scaled_vector_3()(normal, 1.0/nb)); } }; +} // namespace draw_function_for_lcc + +namespace draw_function_for_face_graph_with_paths +{ + +typedef CGAL::Exact_predicates_inexact_constructions_kernel Local_kernel; +typedef Local_kernel::Point_3 Local_point; +typedef Local_kernel::Vector_3 Local_vector; + // Destructor. // lcc.free_mark(m_oriented_mark); @@ -148,7 +155,7 @@ void compute_face(typename Get_map::type::Dart_const_handle dh, do { graphic_buffer.add_point_in_face(draw_function_for_face_graph_with_paths::get_point(cur, mesh), - LCC_geom_utils:: + draw_function_for_lcc::LCC_geom_utils:: get_vertex_normal(lcc, cur)); cur=lcc.next(cur); } @@ -365,9 +372,9 @@ void add_in_graphic_buffer(const Mesh &mesh, // Default functor; user can add his own functor. Drawing_functor + typename CGAL::Face_graph_wrapper::Dart_const_handle /*vh*/, + typename CGAL::Face_graph_wrapper::Dart_const_handle /*eh*/, + typename CGAL::Face_graph_wrapper::Dart_const_handle /*fh*/> drawing_functor; add_in_graphic_buffer(mesh, graphic_buffer, drawing_functor, lcc, m_paths, amark, m_nofaces);