更改图层时,OpenLayers会缩放

时间:2014-04-02 16:08:18

标签: javascript map openlayers openstreetmap zooming

我正在使用OpenLayers地图开发移动应用程序。我有三个不同的层。图层处于不同的投影中,因此我可以转换范围以及与其位置相关的所有内容。

当我更改图层时 - 地图缩小为1,每次更改图层时 - 地图会缩小一点。

我已经尝试为“map.getZoom”添加1或2,但它也无效。

什么可能导致这种奇怪的行为?如果有帮助,我可以附上所需的代码。

function showOsm() {

    var extent = map.getExtent();

    zoom = map.getZoom();
    var center = map.getCenter();

    var oldProjection = map.getProjectionObject().getCode();

    map.setBaseLayer(osmLayer);

    extentOsm = extent.transform(new OpenLayers.Projection(oldProjection), map
            .getProjectionObject());

    koko = 1;

    center = center.transform(new OpenLayers.Projection(oldProjection), map
            .getProjectionObject());

    estateBoundsOverlay.setVisibility(false);
    taskPoints.removeAllFeatures();

function showMml() {

    var extent = map.getExtent();

    zoom = map.getZoom();
    var center = map.getCenter();

    var oldProjection = map.getProjectionObject().getCode();

    if (firstStart){
        map.zoomToMaxExtent();
    }

    map.setBaseLayer(layer);

    extentMml = extent.transform(new OpenLayers.Projection(oldProjection), map
            .getProjectionObject());

    center = center.transform(new OpenLayers.Projection(oldProjection), map
            .getProjectionObject());

    taskPoints.removeAllFeatures();

这些函数调用图层(map.setBaseLayer - 这一个使图层可见)。我有标准的图层属性(使用maxExtent,restrictedExtent,zoomLevels,projection和displayProjection)。

0 个答案:

没有答案