From 1e6806f6e15a63387de5e65268c61ba24db3a629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Tue, 2 Jan 2018 17:16:03 +0100 Subject: [PATCH] add missing overloads --- .../CGAL/regular_neighbor_coordinates_2.h | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/Interpolation/include/CGAL/regular_neighbor_coordinates_2.h b/Interpolation/include/CGAL/regular_neighbor_coordinates_2.h index a9c6ad570db..4e244b6831b 100644 --- a/Interpolation/include/CGAL/regular_neighbor_coordinates_2.h +++ b/Interpolation/include/CGAL/regular_neighbor_coordinates_2.h @@ -30,6 +30,9 @@ #include #include #include +#include +#include +#include namespace CGAL { @@ -278,6 +281,20 @@ regular_neighbor_coordinates_2(const Rt& rt, return regular_neighbor_coordinates_2(rt, p, out, typename Rt::Face_handle()); } +template +Triple< OutputIterator, typename Rt::Geom_traits::FT, bool > +regular_neighbor_coordinates_2(const Rt& rt, + const typename Rt::Weighted_point& p, + OutputIterator out, + Fct fct, + typename boost::disable_if_c< + boost::is_convertible::value + >::type* = 0) +{ + return regular_neighbor_coordinates_2(rt, p, out, fct, typename Rt::Face_handle()); +} + //OutputIterator has value type // std::pair< Rt::Geom_traits::Weighted_point_2, Rt::Geom_traits::FT> //Face_handle start is known: @@ -291,6 +308,18 @@ regular_neighbor_coordinates_2(const Rt& rt, return regular_neighbor_coordinates_2(rt, p, out, Emptyset_iterator(), start); } +template +Triple< OutputIterator, typename Rt::Geom_traits::FT, bool > +regular_neighbor_coordinates_2(const Rt& rt, + const typename Rt::Weighted_point& p, + OutputIterator out, + Fct fct, + typename Rt::Face_handle start, + typename boost::disable_if_c< is_iterator::value >::type* = 0) +{ + return regular_neighbor_coordinates_2(rt, p, out, fct, Emptyset_iterator(), start); +} + //OutputIterator has value type // std::pair< Rt::Geom_traits::Weighted_point_2, Rt::Geom_traits::FT> //the Voronoi vertices of the power cell are known: @@ -324,7 +353,8 @@ regular_neighbor_coordinates_2(const Rt& rt, const typename Rt::Weighted_point& p, OutputIterator out, OutputIteratorVorVertices vor_vertices, - typename Rt::Face_handle start) + typename Rt::Face_handle start, + typename boost::enable_if_c< is_iterator::value >::type* = 0) { return regular_neighbor_coordinates_2(rt, p, out, Interpolation::internal::Vertex2WPoint(),