[OpenLayers-Dev] Bug in the maps zoomTo method since OL 2.13

Andreas Hocevar ahocevar at boundlessgeo.com
Sun Dec 1 12:44:29 PST 2013


Hey Marc,

you may want to review this:
https://github.com/openlayers/openlayers/pull/1191

Andreas.


On Fri, Nov 29, 2013 at 9:41 AM, Marc Jansen <jansen at terrestris.de> wrote:

>  Hey all,
>
> I think Johannes might have discovered a bug / behavioural change still
> undocumented. While in 2.12 it was perfectly fine to call zoomTo multiple
> times, with 2.13 and later you get very unexpected results. If we can we
> should guard against that:
>
> Run the following lines in a console against 2.12 and 2.13 (e.g.
> http://dev.openlayers.org/releases/OpenLayers-2.12/examples/all-overlays.html,
>
> http://dev.openlayers.org/releases/OpenLayers-2.13/examples/all-overlays.html
> )
>
> console.log('Initial zoom is: ' + map.getZoom());
> console.log('calling zoomTo: 1, 2, 1, 0');
> map.zoomTo(1);
> map.zoomTo(2);
> map.zoomTo(1);
> map.zoomTo(0);
> console.log('wait 10 seconds, and then get the zoom');
> var to = window.setTimeout(function(){
>     console.log('Current zoom is: ' + map.getZoom());
> }, 10000);
>
> 2.12 (as expected):
>
> Initial zoom is: 0
> calling zoomTo: 1, 2, 1, 0
> wait 10 seconds, and then get the zoom
> Current zoom is: 0
>
>
> 2.13 (ends with zoom 4, IMHO wrong, at least highly unexpected):
>
> Initial zoom is: 0
> calling zoomTo: 1, 2, 1, 0
> wait 10 seconds, and then get the zoom
> Current zoom is: 4
>
>
> 2.13.1 is the same as 2.13
>
> I don't think that it is ok that we end up with four.
>
> Best,
> Marc
>
>
>
>
>
> On 27.11.2013 13:14, Andreas Hocevar wrote:
>
> With your above example, your zoom level when you call map.getZoom() will
> be something between 0 and 5. This is because map.zoomTo() is asynchronous
> now, at least when a zoomMethod is configured for the map.
>
>  So instead of calling getZoom() directly, you should register for a
> zoomend listener and call getZoom() there.
>
>  Andreas.
>
>
>  On Wed, Nov 27, 2013 at 11:17 AM, Johannes Weskamm <weskamm at terrestris.de
> > wrote:
>
>>  Hi,
>>
>> I think i found a bug in the zoomTo Method of the map, while
>> investigating an issue in geoext 2 (
>> https://github.com/geoext/geoext2/issues/205).
>> The problem seems to be introduced since OL 2.13 and is also occuring in
>> 2.13.1:
>>
>> When you zoom the map with the zoomTo Method multiple times in a row, the
>> result will be confusing.
>> To be exact, it will not be the last zoomValue you have given to the
>> method, instead it will become e.g. 0.
>>
>> Here is the simple code which i used to test the behaviour:
>>
>> m = map;
>> m.zoomTo(1);
>> m.zoomTo(2);
>> m.zoomTo(3);
>> m.zoomTo(4);
>> m.zoomTo(5);
>> m.getZoom();
>>
>> The result of the last line should return a value of 5. But since OL
>> 2.13, it returns 0 or some other non-correct value.
>> I checked this with the official examples of OL 2.12, 2.13 and 2.13.1:
>>
>>
>> http://dev.openlayers.org/releases/OpenLayers-2.12/examples/all-overlays.html
>>
>> In 2.12, everything works as expected, but in
>>
>>
>> http://dev.openlayers.org/releases/OpenLayers-2.13/examples/all-overlays.html
>>
>> or
>>
>>
>> http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/all-overlays.html
>>
>> it does not, like described above.
>> A first finding is that when you use "zoomMethod: null" on map
>> instanciation, the problem disappears. So this bug could have something
>> todo with the " zoomTween" on the map. Maybe someone could have a detailed
>> look at this?
>>
>> Best regards,
>>
>> Johannes Weskamm
>>
>> _______________________________________________
>> Dev mailing list
>> Dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/openlayers-dev
>>
>
>
>
> _______________________________________________
> Dev mailing listDev at lists.osgeo.orghttp://lists.osgeo.org/mailman/listinfo/openlayers-dev
>
>
>
> _______________________________________________
> Dev mailing list
> Dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/openlayers-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/openlayers-dev/attachments/20131201/1db0198c/attachment.html>


More information about the Dev mailing list