[OpenLayers-Dev] preserving scale on base layer switching
Tim Schaub
tschaub at opengeo.org
Wed Feb 3 12:17:27 EST 2010
Andreas Hocevar wrote:
> Tim Schaub wrote:
>> Currently, when a new base layer is set, we determine the new
>> resolution based on the previous map extent. An alternative would be
>> to determine the new resolution based on the previous scale.
>> Preserving center and scale makes better sense to me. I'm curious
>> what others think.
>>
>
> I totally agree. This should also improve behavior when switching
> between base layers with different projections/units.
>
Thanks for the feedback. I put this in with r10014. (By the way, how
did we forget to celebrate http://trac.openlayers.org/changeset/10000 ???)
If anybody notices any funkiness, please re-open ticket #2457 or create
a new one. I removed a couple conditions that seemed unnecessary to me
- but perhaps there were real cases for them (e.g. prefer
map.getExtent().getCenterLonLat() over map.getCenter()).
At least now you can center your dateline-wrapping map on the Bering Sea
and switch base layers without ending up in Denmark.
Tim
> -Andreas.
>
>> The resolution based on extent method breaks down when extents are not
>> well defined. E.g. with an extent that wraps the date line. To see
>> this break-down in action, follow these steps:
>>
>> 1) open http://openlayers.org/dev/examples/google.html
>> 2) click to zoom all the way out (you'll see multiple worlds)
>> 3) open the switcher and change base layers
>>
>> You should see the scale change.
>>
>> Apply the patch for http://trac.openlayers.org/ticket/2457 and you
>> should see better behavior.
>>
>> Thanks for any feedback.
>> Tim
>>
>>
>
>
--
Tim Schaub
OpenGeo - http://opengeo.org
Expert service straight from the developers.
More information about the Dev
mailing list