diff --git a/indexer/displacement_manager.hpp b/indexer/displacement_manager.hpp index b2e20bf5ae..3520c3c3c2 100644 --- a/indexer/displacement_manager.hpp +++ b/indexer/displacement_manager.hpp @@ -1,6 +1,7 @@ #pragma once #include "indexer/cell_id.hpp" +#include "indexer/classificator.hpp" #include "indexer/drawing_rules.hpp" #include "indexer/feature_data.hpp" #include "indexer/feature_visibility.hpp" @@ -122,8 +123,11 @@ public: for (auto const & node : m_storage) { uint32_t scale = node.m_minScale; - // Do not filter high level objects. - if (scale <= scales::GetUpperWorldScale()) + // Do not filter high level objects. Including metro and country names. + static size_t const maximumIgnoredZoom = feature::GetDrawableScaleRange( + classif().GetTypeByPath({"railway", "station", "subway"})).first; + + if (scale <= maximumIgnoredZoom) { AddNodeToSorter(node,scale); acceptedNodes.Add(node);