Skip to content
This repository was archived by the owner on Aug 8, 2023. It is now read-only.

[CP][tile mode] Improvements in symbol placement on tile borders - #16171

Closed
pozdnyakov wants to merge 3 commits into
masterfrom
CP_16159_2020.01-release-unicorn
Closed

pozdnyakov wants to merge 3 commits into
masterfrom
CP_16159_2020.01-release-unicorn

Conversation

@pozdnyakov

Copy link
Copy Markdown
Contributor

Cherry-pick #16159 to 2020.01-release-unicorn

alexshalamov and others added 3 commits February 3, 2020 18:44
Factory 'get' method can be invoked recursively and stable iterators
are required to guarantee safety.
* [build] Adding a build flag to build without GL if needed

* [build] Moving custom layer to mbgl/gl
This change fixes the following problems:
1) Before this change, when multiple symbols were grouped close to the
tile borders, different tiles could place different symbols, because each
tile arbitrary assigned feature ids, and these ids defined the placement
order being applied. This caused artifacts at the tile boundaries.

With this change, in tile mode the placement order of two symbols crossing
a tile border is defined by their anchor `y` values. It means that the
symbols are being placed the same order across all the tiles.

2) Before this change, the engine did not place with priority the symbols
crossing the borders between two neighboring tiles. Now it does, and it
improves a lot symbol placement stability in the tile map mode.
@pozdnyakov
pozdnyakov requested a review from 1ec5 as a code owner February 3, 2020 18:58
@pozdnyakov pozdnyakov closed this Feb 3, 2020
@alexshalamov
alexshalamov deleted the CP_16159_2020.01-release-unicorn branch February 3, 2020 19:37
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants