ThinkGeo.com    |     Documentation    |     Premium Support

Unable to restrict zoom levels for Google and VE overlays

HI Thinkgeo,


I want to restrict the maps to say 18 or 19 levels instead of current 20. IF the base map is Thinkgeo or from the WMS server then I am able to control zoom leves to 18/19.


. However when I use Google or Bing Virtual Earth overlay ,  then it does not work


Regard,


Anil


 



 


Hi, Anil
Yes, it won’t success if you try to use the custom zoom levels or other methods to restrict the zoom levels of Google or Virtual Earth layer, because these layers will already have established zoom levels. But you can change that depending on your requirements. Please refer to the codes below, and it will set the zoom levels from ZoomLevel14 to ZoomLevel16 (Start from 0) for a Google overlay named as 'Google Map'.
    <script type="text/javascript">
        var OnOverlaysDrawing = function (layers) {
            for (var i = 0, l = layers.length; i < l; i++) {
                var layer = layers;
                if (layer.id === "Google Map") {
                    layer.MIN_ZOOM_LEVEL = 15;
                    layer.MAX_ZOOM_LEVEL = 17;
                }
            }
        }
    </script>
 
Thanks,
Khalil

Thanks Khalil. It works except I have to change one line in segment var layer = layers
 It however does not work for WMS layer. I added that one in C# code.

 


Anil,
Sorry for that. I guess the square brackets are ignored by the Discussion Forums system by default.
This method only works for the third party map services (like Google or VE). As for WMS layer, I think you can make it work using the custom zoom levels, because they don’t have the established zoom levels. Any additional questions please let us know.
Thanks,
Khalil