页面加载完成后图层信息跟底图的位置有偏差

0 投票

使用的是9D的leaflet.js进行开发的,页面加载完成后的页面如下:如图,蓝色的边框是图层信息,跟底图的位置对应有偏差,但是只要多地图进行放大或者缩小操作后,图层信息的位置跟底图的位置就对应了,如下图,页面加载后进行了手动放大页面,这样就是想要的效果

老师您好,这种情况应该怎么办

3月 16, 2020 分类:  140次浏览 | 用户: qwert 初出茅庐 (36 分)

1个回答

0 投票
您好,这两个图层的源数据的坐标系是否一致,在idekstop中看看是否也会偏移,或者是否开启了动态投影,图层的加载是否通过异步方式执行的?如果可以的话麻烦提供一个可以在官网范例中执行的代码做测试。
3月 16, 2020 用户: 于浩 登峰造极 (5,668 分)

老师您好,很抱歉这个不太好在实例中演示,这个地图加载的代码也很普通,这是jsp页面的加载:

这是js:加载地图的代码只有这么多了,

这是先加载的底图,然后调用init()叠加图层信息。

因为这个是页面加载后地图与图层信息位置有偏差,但是只要对页面一进行放大缩小操作就位置就完全对应,老师您好,有没有什么方法在页面加载完成后对地图进行一下放大操作的,这样页面就可能跳过那个偏差的过程了,直接显示放大后位置完全对应的地图了。

如果是需要放大一级地图的话可以用map的zoomin和zoomout事件来执行,但是这个情况感觉像是没有做异步加载地图导致的。你可以用你的加载图层的部分代码在这个范例中执行看一下,替换相关部分。叠加图层的部分可以用你的query那一部分的功能来实现

https://iclient.supermap.io/examples/leaflet/editor.html#01_overlayTiledMapLayer

...