diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-04-18 18:05:53 +0300 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-05-08 12:21:47 +0300 |
commit | ef48d53e78573c30d543a5fa84a7d524c950a2f3 (patch) | |
tree | 9e66018861eec8960844b6c3ca7471ca07c2c2f5 /src/mbgl/renderer/buckets/symbol_bucket.hpp | |
parent | f703c6f2552245f11eff8e66b9613e7d28ee193e (diff) | |
download | qtlocation-mapboxgl-ef48d53e78573c30d543a5fa84a7d524c950a2f3.tar.gz |
[core] Placement order matches viewport-y sort
Symbols are placed accordingly to their viewport Y order,
if the style `symbol-z-order` is set to `viewport-y`.
This improves rendering of symbol layers, where icons are allowed
to overlap but not text.
Diffstat (limited to 'src/mbgl/renderer/buckets/symbol_bucket.hpp')
-rw-r--r-- | src/mbgl/renderer/buckets/symbol_bucket.hpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mbgl/renderer/buckets/symbol_bucket.hpp b/src/mbgl/renderer/buckets/symbol_bucket.hpp index 61b4435e77..7db17f0062 100644 --- a/src/mbgl/renderer/buckets/symbol_bucket.hpp +++ b/src/mbgl/renderer/buckets/symbol_bucket.hpp @@ -65,6 +65,8 @@ public: void updateOpacity(); void sortFeatures(const float angle); + // The result contains references to the `symbolInstances` items, sorted by viewport Y. + std::vector<std::reference_wrapper<SymbolInstance>> getSortedSymbols(const float angle); const style::SymbolLayoutProperties::PossiblyEvaluated layout; const bool sdfIcons; |