Remix.run Logo
teraflop 8 months ago

It's not that the layout algorithm is different, it's that the algorithm tries to optimize the positions of text labels to get an aesthetically pleasing spacing, while preventing them from overlapping each other.

If you keep the label positions the same, but translate the text, then the layout will have been computed with the wrong bounding boxes, and you will tend to get wrong spacing and unintended overlaps.

everybodyknows 8 months ago | parent | next [-]

Where can we learn more about the label positioning/enabling algorithms? I'm wondering at what stages of the vector-tile rendering pipeline various actions happen e.g. selecting for a particular language, binding into the tile (single object?), avoiding crowding line geometry, avoiding crowding of other labels, font selection, rasterization, ...

Someone 8 months ago | parent | prev [-]

> the algorithm tries to optimize the positions of text labels

Not only that, deciding whether to show a label at all can depend on its size and shape, and if a label deemed important becomes larger that can lead to the decision to not show some map details (in an ideal world)