diff --git a/include/boost/geometry/multi/algorithms/simplify.hpp b/include/boost/geometry/multi/algorithms/simplify.hpp index dc3c7b593..1706c69f4 100644 --- a/include/boost/geometry/multi/algorithms/simplify.hpp +++ b/include/boost/geometry/multi/algorithms/simplify.hpp @@ -31,9 +31,10 @@ namespace boost { namespace geometry namespace detail { namespace simplify { -template +template struct simplify_multi { + template static inline void apply(MultiGeometry const& multi, MultiGeometry& out, double max_distance, Strategy const& strategy) { @@ -63,47 +64,21 @@ struct simplify_multi namespace dispatch { -template -struct simplify +template +struct simplify : detail::simplify::simplify_copy - < - MultiPoint, - Strategy - > - {}; -template -struct simplify - : detail::simplify::simplify_multi - < - MultiLinestring, - Strategy, - detail::simplify::simplify_range - < - typename boost::range_value::type, - Strategy, - 2 - > - > - +template +struct simplify + : detail::simplify::simplify_multi > {}; -template -struct simplify - : detail::simplify::simplify_multi - < - MultiPolygon, - Strategy, - detail::simplify::simplify_polygon - < - typename boost::range_value::type, - Strategy - > - > - +template +struct simplify + : detail::simplify::simplify_multi {};