I have a simple WebGIS with Mapserver, Tilecache and Openlayers. This project has something like 12 zoom levels.

The problem is when I zoom for several layers (say 8 lavels), it becomes very slow, since it tries to load images for all the previous 8 zoom levels.

Has nay body have any idea how to overcome this problem?

  • What version of OpenLayers are you using? I know there have been various tile queueing enhancements in the more recent ones. There are also various options that you can set that might help, but I can't say without knowing which vesion of OpenLayers you are using. – Rob Quincey Aug 5 '13 at 13:51
  • Hey Rob, I'm using Openlayers 2.12. – Sajjad Aug 6 '13 at 4:44

I would have thought that the improvemets in OL 2.12 would have sorted tile queueing issues like this. Our application used to be the same but with the OL 2.12 upgrade it sorted it. You could try one fo the following;

1) Upgrade to OL 2.13 - Improvements were made to the tile queueing system. I don't know how much of an impact this will have but it might be a quick and easy way to solve some problems. OL 2.13 also includes animated zooming which is quite nice.

2) Change the mousewheel interval - As in this example you could change the time OpenLayers waits between mousewheel 'clicks' to perform it's zoom end action (load the tiles at this zoom). You do this when declaring your map controls, for example;

new OpenLayers.Control.Navigation({
    "zoomWheelEnabled": true,
    "mouseWheelOptions": {
        "interval": 250, 
        "cumulative": true

3) You could also look into setting up your own TileManager. All I can do here is provide a link to the OL docs on this because I have never needed to or wanted to touch this. Consider it a last resort. - OpenLayers.TileManager

Hope this helps.

  • thanX Rob, very useful – Sajjad Aug 11 '13 at 5:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.