GeometryCollection operator()(const mapbox::geometry::line_string<int16_t>& geom) const { GeometryCoordinates coordinates; coordinates.reserve(geom.size()); for (const auto& point : geom) { coordinates.emplace_back(point); } return { coordinates }; }
void operator() (mapbox::geometry::line_string<std::int64_t> & geom) { if (geom.size() <= 2) { next_(geom); } else { mapbox::geometry::line_string<std::int64_t> simplified; douglas_peucker(geom, std::back_inserter(simplified), simplify_distance_); next_(simplified); } }