Skip to main content

2 posts tagged with "offline-maps"

View All Tags

What a map vertex costs

· 7 min read
Evgen Bodunov
Evgen Bodunov
CEO @ Globus Software

Here is a building in the centre of Warsaw the way our previous offline map format stored it, :

Grid step 73 cm. Corners move by up to 44 cm, 28 cm on average.

The dashed line is the outline as it was mapped in OpenStreetMap. Every vertex of a GLMap tile sits on a grid laid over the tile, and the tiles that serve street-level zooms cover about 3 km of Warsaw each. With 12 bits per axis the grid step there is 73 cm, and the orange lines show how far each corner moved to reach it. At zoom 13 nobody sees that. At zoom 17, where these buildings fill the screen, the corners visibly go astray. the step is 18 cm.

gom5, our new map format, moved to 14 bits. Those two extra bits per axis cost bytes in the file, bytes in the download and time in decoding, and we did not see all of it at once.

How an Offline Map Knows Which Paris You Mean

· 8 min read
Evgen Bodunov
Evgen Bodunov
CEO @ Globus Software

The map is open on Warsaw, and someone types Eiffel Tower Paris France. GLMap search starts from the map center: it opens the detailed maps around it and puts the nearest results first. The Eiffel Tower is 1,370 km away, in a map file that such a search never opens.

This is what the engine does with that query now, and with the other queries from this post. Each word is coloured by the role the engine gives it:

EiffelTowerParisFrance
map centerParis
The world map resolves Paris, France; the rest, Eiffel Tower, is searched in the detailed maps around Paris. Warsaw still ranks the results.

Words with an orange border are places the engine looks up before the search itself, and a dashed border marks a place name that belongs to the name of something else. The dot marked “map center” is where the map is open, and the circle is the area where the detailed maps are searched.