diff options
author | Daria Volvenkova <d.volvenkova@corp.mail.ru> | 2017-11-13 14:07:56 +0300 |
---|---|---|
committer | Vladimir Byko-Ianko <bykoianko@gmail.com> | 2017-11-14 18:29:04 +0300 |
commit | 2fc02876b4ad13bc27f0f1ab67fe36f3100114f3 (patch) | |
tree | 333e8b8a702ba00dbcaa280ef688bdb86678452a /drape_frontend/user_mark_shapes.cpp | |
parent | cb0cd2e5a16f38e42ec52440fb347b95254ada89 (diff) |
Transit mark realization.
Diffstat (limited to 'drape_frontend/user_mark_shapes.cpp')
-rw-r--r-- | drape_frontend/user_mark_shapes.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/drape_frontend/user_mark_shapes.cpp b/drape_frontend/user_mark_shapes.cpp index ee9621dd2d..d593e2f76a 100644 --- a/drape_frontend/user_mark_shapes.cpp +++ b/drape_frontend/user_mark_shapes.cpp @@ -130,7 +130,7 @@ void CacheUserMarks(TileKey const & tileKey, ref_ptr<dp::TextureManager> texture PoiSymbolShape(renderInfo.m_pivot, params, tileKey, 0 /* textIndex */).Draw(&batcher, textures); } - else + else if (!renderInfo.m_symbolName.empty()) { buffer.reserve(vertexCount); @@ -180,9 +180,16 @@ void CacheUserMarks(TileKey const & tileKey, ref_ptr<dp::TextureManager> texture params.m_specialPriority = renderInfo.m_priority; } - dp::TextureManager::SymbolRegion region; - textures->GetSymbolRegion(renderInfo.m_symbolName, region); - m2::PointF const symbolSize = region.GetPixelSize(); + m2::PointF symbolSize; + if (renderInfo.m_symbolSizes != nullptr) + { + symbolSize = renderInfo.m_symbolSizes->at(static_cast<size_t>(tileKey.m_zoomLevel)) * vs; + } + else + { + textures->GetSymbolRegion(renderInfo.m_symbolName, region); + symbolSize = region.GetPixelSize(); + } TextShape(renderInfo.m_pivot, params, tileKey, renderInfo.m_hasSymbolPriority /* hasPOI */, symbolSize, renderInfo.m_anchor, 0 /* textIndex */).Draw(&batcher, textures); |