diff --git a/drape_frontend/apply_feature_functors.cpp b/drape_frontend/apply_feature_functors.cpp index 7678594016..a603346943 100644 --- a/drape_frontend/apply_feature_functors.cpp +++ b/drape_frontend/apply_feature_functors.cpp @@ -433,11 +433,7 @@ ApplyPointFeature::ApplyPointFeature(TileKey const & tileKey, TInsertShapeFn con CaptionDescription const & captions, float posZ) : TBase(tileKey, insertShape, f, captions) , m_posZ(posZ) - , m_hasArea(false) - , m_createdByEditor(false) - , m_obsoleteInEditor(false) , m_symbolDepth(dp::kMinDepth) - , m_symbolRule(nullptr) {} void ApplyPointFeature::operator()(m2::PointD const & point, bool hasArea) @@ -528,7 +524,7 @@ void ApplyPointFeature::Finish(ref_ptr texMng) symbolSize = region.GetPixelSize(); if (region.IsValid()) - m_insertShape(make_unique_dp(m2::PointD(m_centerPoint), params, m_tileKey, 0 /* textIndex */)); + m_insertShape(make_unique_dp(m_centerPoint, params, m_tileKey, 0 /* textIndex */)); else LOG(LERROR, ("Style error. Symbol name must be valid for feature", m_f.GetID())); } @@ -546,7 +542,7 @@ void ApplyPointFeature::Finish(ref_ptr texMng) } m_textParams.m_startOverlayRank = hasIcon ? dp::OverlayRank1 : dp::OverlayRank0; - auto shape = make_unique_dp(m2::PointD(m_centerPoint), m_textParams, m_tileKey, symbolSize, + auto shape = make_unique_dp(m_centerPoint, m_textParams, m_tileKey, symbolSize, m2::PointF(0.0f, 0.0f) /* symbolOffset */, dp::Center /* symbolAnchor */, 0 /* textIndex */); m_insertShape(std::move(shape)); @@ -564,7 +560,7 @@ void ApplyPointFeature::Finish(ref_ptr texMng) m_hnParams.m_startOverlayRank = dp::OverlayRank1; } } - m_insertShape(make_unique_dp(m2::PointD(m_centerPoint), m_hnParams, m_tileKey, symbolSize, + m_insertShape(make_unique_dp(m_centerPoint, m_hnParams, m_tileKey, symbolSize, m2::PointF(0.0f, 0.0f) /* symbolOffset */, dp::Center /* symbolAnchor */, 0 /* textIndex */)); } diff --git a/drape_frontend/apply_feature_functors.hpp b/drape_frontend/apply_feature_functors.hpp index 8d32ef0f48..2819217f1e 100644 --- a/drape_frontend/apply_feature_functors.hpp +++ b/drape_frontend/apply_feature_functors.hpp @@ -72,14 +72,14 @@ protected: float const m_posZ; private: - bool m_hasArea; - bool m_createdByEditor; - bool m_obsoleteInEditor; - float m_symbolDepth; - SymbolRuleProto const * m_symbolRule; - m2::PointF m_centerPoint; TextViewParams m_textParams; TextViewParams m_hnParams; + m2::PointD m_centerPoint; + SymbolRuleProto const * m_symbolRule = nullptr; + float m_symbolDepth; + bool m_hasArea = false; + bool m_createdByEditor = false; + bool m_obsoleteInEditor = false; }; class ApplyAreaFeature : public ApplyPointFeature diff --git a/drape_frontend/rule_drawer.cpp b/drape_frontend/rule_drawer.cpp index 55fd8b56fa..2cfb0426d6 100644 --- a/drape_frontend/rule_drawer.cpp +++ b/drape_frontend/rule_drawer.cpp @@ -322,7 +322,7 @@ void RuleDrawer::ProcessAreaAndPointStyle(FeatureType & f, Stylist const & s, TI apply.ProcessAreaRule(s.m_areaRule, areaDepth, false); /// @todo Can we put this check in the beginning of this function? - if (!IsDiscardCustomFeature(f.GetID())) + if (applyPointStyle && !IsDiscardCustomFeature(f.GetID())) { // Process point style. if (s.m_symbolRule != nullptr)