Optimize Overlay behaviour for better speed and less battery use and better usability

Michael Bechtold shared this idea 2 years ago
Collecting votes

This request covers two aspects:

1) Do not calculate/try to display base map items when overlay has 100% visibility

This change has obvious benefits, reducing battery consumption and increase responsiveness.

And it does not imply re-architecting the map management ...

For those who did not follow the "raster versus vector map for low zoom levels" dispute: this will optimize the display speed at low zoom levels for the workaround that joelec found.

FYI - here are the map sizes for the workaround:

- zoom 8: 450 MB - this is equivalent to current vector map level, uses more than its 10 MB, obviously, but gives you a useful map instead, and first of all: one of your choice

- zoom 9: 800 MB

- zoom 10: 2.2 GB

Now #2) Currently, above maps need to include a layer of transparent tiles, one level above max zoomlevel.

A remedy is to add a choice to the Overlay definition screen "Zoom beyond max".

If checked, it will behave as today, bluring the overlay more and more while growing zoom levels

If un-checked, Locus will not display the Overlay map at all, once beyond the max zoom in the map file.

This will reduce the above file sizes by about 10%, and it will give more control to users to fit the needs of their Overlay use cases.

Comments (4)


Forgot to mention: above sizes are for the whole planet, where the max zoom in the file covers approx. from 60 South to 75 North.


Built a map for most of Europe (ex Ukraine, Belarus, Anatolia), up to zoom level 11, plus the transparent level 12 - 1.1 GB. From level 12 upwards, Locus performance is good.

Thanks again, joelec, for the great idea. Still, there is room to optimize, as per above ...


I made a more flexible solution for overlay zoom settings here:



As for not rendering base map when overlay has 100% opacity, that is slightly more complex. The overlay can contain an alpha channel obviously. JPG tiles won't though, so menion could more or less do

if (overlayopacitysetting==100% && overlaymaptiles->alphachannel==false)


That would benefit overlay maps used as overview... in other usage cases such a combination wouldn't make sense.