diff --git a/include/boost/geometry/algorithms/detail/overlay/overlay.hpp b/include/boost/geometry/algorithms/detail/overlay/overlay.hpp index ab5b6d123..41665e0af 100644 --- a/include/boost/geometry/algorithms/detail/overlay/overlay.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/overlay.hpp @@ -233,7 +233,7 @@ std::cout << "traverse" << std::endl; std::cout << "map_turns: " << timer.elapsed() << std::endl; #endif - typedef ring_properties::type> properties; + typedef ring_properties::type> properties; std::map selected; select_rings(geometry1, geometry2, map, selected, ! turn_points.empty()); diff --git a/include/boost/geometry/algorithms/detail/point_on_border.hpp b/include/boost/geometry/algorithms/detail/point_on_border.hpp index 33177924a..b7e15ba3f 100644 --- a/include/boost/geometry/algorithms/detail/point_on_border.hpp +++ b/include/boost/geometry/algorithms/detail/point_on_border.hpp @@ -25,6 +25,7 @@ #include #include +#include #include @@ -50,7 +51,8 @@ struct get_point template struct midpoint_helper { - static inline bool apply(Point& p, Point const& p1, Point const& p2) + template + static inline bool apply(Point& p, InputPoint const& p1, InputPoint const& p2) { typename coordinate_type::type const two = 2; set(p, @@ -63,7 +65,8 @@ struct midpoint_helper template struct midpoint_helper { - static inline bool apply(Point& , Point const& , Point const& ) + template + static inline bool apply(Point& , InputPoint const& , InputPoint const& ) { return true; } @@ -102,7 +105,7 @@ struct point_on_range if (n > 0) { - point = *boost::begin(range); + geometry::detail::conversion::convert_point_to_point(*boost::begin(range), point); return true; } return false;