summaryrefslogtreecommitdiff
path: root/src/mbgl/text/placement.cpp
diff options
context:
space:
mode:
authorMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2020-02-28 14:11:15 +0200
committerMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2020-03-03 16:13:48 +0200
commitdea10633197fbcf949e48ffc0a46fd75bbcb057d (patch)
treec708ae9d384ed4221f3f8b112b5d53d2d1e94c38 /src/mbgl/text/placement.cpp
parentffe95ec7d3e4f8bf5274b308d39e5a5a6bd13339 (diff)
downloadqtlocation-mapboxgl-dea10633197fbcf949e48ffc0a46fd75bbcb057d.tar.gz
[core] Encapsulate placement code handling symbols sort ranges
Diffstat (limited to 'src/mbgl/text/placement.cpp')
-rw-r--r--src/mbgl/text/placement.cpp15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/mbgl/text/placement.cpp b/src/mbgl/text/placement.cpp
index 57cf1f0f1f..398e0f9e03 100644
--- a/src/mbgl/text/placement.cpp
+++ b/src/mbgl/text/placement.cpp
@@ -113,12 +113,7 @@ void Placement::placeLayer(const RenderLayer& layer) {
std::set<uint32_t> seenCrossTileIDs;
for (const auto& item : layer.getPlacementData()) {
Bucket& bucket = item.bucket;
- BucketPlacementParameters params{item.tile,
- layer.baseImpl->source,
- item.featureIndex,
- item.sortKey,
- item.symbolInstanceStart,
- item.symbolInstanceEnd};
+ BucketPlacementParameters params{item.tile, layer.baseImpl->source, item.featureIndex, item.sortKeyRange};
bucket.place(*this, params, seenCrossTileIDs);
}
}
@@ -661,12 +656,8 @@ void Placement::placeBucket(const SymbolBucket& bucket,
}
} else {
- auto beginIt = bucket.symbolInstances.begin() + params.symbolInstanceStart;
- auto endIt = bucket.symbolInstances.begin() + params.symbolInstanceEnd;
- assert(params.symbolInstanceStart < params.symbolInstanceEnd);
- assert(params.symbolInstanceEnd <= bucket.symbolInstances.size());
- for (auto it = beginIt; it != endIt; ++it) {
- placeSymbol(*it);
+ for (const SymbolInstance& symbol : bucket.getSymbols(params.sortKeyRange)) {
+ placeSymbol(symbol);
}
}