size_t fill_polygon_unique(TIter it, TIter end) { size_t num_points = 0; osmium::Location last_location; for (; it != end; ++it) { if (last_location != it->location()) { last_location = it->location(); m_impl.polygon_add_location(m_projection(last_location)); ++num_points; } } return num_points; }
int fill_linestring_unique(TIter it, TIter end) { int num_points = 0; osmium::Location last_location; for (; it != end; ++it) { if (last_location != it->location()) { last_location = it->location(); m_impl.linestring_add_location(m_projection(last_location)); ++num_points; } } return num_points; }
size_t fill_polygon(TIter it, TIter end) { size_t num_points = 0; for (; it != end; ++it, ++num_points) { m_impl.polygon_add_location(m_projection(it->location())); } return num_points; }
int fill_linestring(TIter it, TIter end) { int num_points = 0; for (; it != end; ++it, ++num_points) { m_impl.linestring_add_location(m_projection(it->location())); } return num_points; }