diff --git a/generator/feature_builder.hpp b/generator/feature_builder.hpp index c32ce2e0bc..e7a506def5 100644 --- a/generator/feature_builder.hpp +++ b/generator/feature_builder.hpp @@ -50,6 +50,7 @@ public: inline bool HasType(uint32_t t) const { return m_params.IsTypeExist(t); } inline bool PopExactType(uint32_t type) { return m_params.PopExactType(type); } inline void SetType(uint32_t type) { m_params.SetType(type); } + inline uint32_t FindType(uint32_t comp, uint8_t level) const { return m_params.FindType(comp, level); } /// Check classificator types for their compatibility with feature geometry type. /// Need to call when using any classificator types manipulating. diff --git a/generator/osm_source.cpp b/generator/osm_source.cpp index d080d57a45..28c11d029c 100644 --- a/generator/osm_source.cpp +++ b/generator/osm_source.cpp @@ -309,14 +309,23 @@ namespace size_t const count = m_coasts->GetCellsCount(); LOG(LINFO, ("Generating coastline polygons", count)); + size_t totalRegions = 0; + size_t totalPoints = 0; + size_t totalPolygons = 0; for (size_t i = 0; i < count; ++i) { vector vecFb; m_coasts->GetFeatures(i, vecFb); for (size_t j = 0; j < vecFb.size(); ++j) + { (*m_coastsHolder)(vecFb[j]); + ++totalRegions; + totalPoints += vecFb[j].GetPointsCount(); + totalPolygons += vecFb[j].GetPolygonsCount(); + } } + LOG(LINFO, ("Total regions:", totalRegions, "total points:", totalPoints, "totalPolygons:", totalPolygons)); } else if (m_coastsHolder) { diff --git a/tools/unix/generate_planet.sh b/tools/unix/generate_planet.sh index 0113a0348a..d39443560a 100755 --- a/tools/unix/generate_planet.sh +++ b/tools/unix/generate_planet.sh @@ -260,6 +260,7 @@ if [ "$MODE" == "coast" ]; then fi done # make a working copy of generated coastlines file + [ -n "$OPT_WORLD" ] && cp "$INTCOASTSDIR/WorldCoasts.rawdump" "$INTDIR" [ -n "$OPT_WORLD" ] && cp "$INTCOASTSDIR/WorldCoasts.geom" "$INTDIR" [ -z "$KEEP_INTDIR" ] && rm -r "$INTCOASTSDIR" MODE=inter