diff options
author | Ansis Brammanis <ansis@mapbox.com> | 2019-10-23 17:21:38 -0400 |
---|---|---|
committer | Dane Springmeyer <dane@mapbox.com> | 2019-10-24 13:49:18 -0700 |
commit | ad9037193d350b6c296dc4b2d44281b872330c1a (patch) | |
tree | 8ccde78d31f0fc22c70f653732fc49d6b1048b4b /src/mbgl/text/placement.cpp | |
parent | 24bee9602c69ba7433071613ea92a39893b97c37 (diff) | |
download | qtlocation-mapboxgl-ad9037193d350b6c296dc4b2d44281b872330c1a.tar.gz |
[core] avoid edges for labels that use text-variable-anchors
to prevent clipped labels in rendered image tiles.
Diffstat (limited to 'src/mbgl/text/placement.cpp')
-rw-r--r-- | src/mbgl/text/placement.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mbgl/text/placement.cpp b/src/mbgl/text/placement.cpp index 8b0a3975fc..7343f19aea 100644 --- a/src/mbgl/text/placement.cpp +++ b/src/mbgl/text/placement.cpp @@ -164,12 +164,12 @@ void Placement::placeBucket( auto partiallyEvaluatedIconSize = bucket.iconSizeBinder->evaluateForZoom(state.getZoom()); optional<CollisionTileBoundaries> avoidEdges; - if (mapMode == MapMode::Tile && - (layout.get<style::SymbolAvoidEdges>() || - layout.get<style::SymbolPlacement>() == style::SymbolPlacementType::Line)) { + if (mapMode == MapMode::Tile && (layout.get<style::SymbolAvoidEdges>() || + layout.get<style::SymbolPlacement>() == style::SymbolPlacementType::Line || + !layout.get<style::TextVariableAnchor>().empty())) { avoidEdges = collisionIndex.projectTileBoundaries(posMatrix); } - + const bool textAllowOverlap = layout.get<style::TextAllowOverlap>(); const bool iconAllowOverlap = layout.get<style::IconAllowOverlap>(); // This logic is similar to the "defaultOpacityState" logic below in updateBucketOpacities |