ignore when constructing the shortlink.
The shortlink was also broken for the new /?{node,way,relation}=id
construct since the code assumed that all URL parameters that weren't
lat/lon/zoom/layers could be safely ignored. I've added
node/way/relation to that list but for future-proofness it might be
better to simply check if there's anything left in ''args'' that we
don't know how to encode, rather than checking on values we know about
now.
- Simplify shortlinkPrefix by removing redundant code.
- Factor out duplicate code for displaying objects on maps.
- Reindent some stuff to make it more readable.
decimal places for the zoom level whilst still preserving accuracy
sufficient to position the map within a few pixels.
The relationship between zoom level, decimal places, and the accuracy
with which the map can then be positioned in pixels is as follows:
Zoom Decimals Accuracy (pixels)
1 0 1.42
2 0 2.84
3 1 0.57
4 1 1.14
5 1 2.28
6 2 0.46
7 2 0.91
8 2 1.82
9 3 0.36
10 3 0.73
11 3 1.46
12 4 0.29
13 4 0.58
14 4 1.17
15 5 0.23
16 5 0.47
17 5 0.93
18 6 0.19
So the worse case is at zoom 2 where accuracy is still within 3 pixels.
Based on a patch by rjmunro.