在我的应用程序中,使用OpenLayers 3.6.0开发,我遇到的问题是,在放大区域边缘后,对于哪些图块存在,线条特征的一部分似乎显示了来自之前的缩放级别。
您应该可以通过在任何浏览器中输入以下网址并使用加号按钮放大来重现这一点:
http://www.basemap.at/application/index.html#{"center":[1914116.9361742584,6087116.001148832],"zoom":14,"rotation":0,"layers":"1000000000"}
我不确定,如果这是OpenLayers中的错误。因此,在打开问题之前,我想问一下,如果另一个开发人员已经看到了同样的问题,并以某种方式解决了它。
最诚挚的问候, 格哈德
答案 0 :(得分:0)
您的应用程序中的问题是图块网格定义不足。对于不可用的磁贴,服务器会响应404错误。通过将平铺集的范围添加到平铺网格定义,您可以避免使用404平铺,问题就会消失。
我创建了一个JSFiddle来向您展示应用程序的正确配置。归结为这样的tileGrid
定义:
tileGrid: new ol.tilegrid.WMTS({
origin: [-20037508.3428, 20037508.3428],
extent: [977649.9582335392, 5838029.951202585, 1913529.9492146818, 6281289.924879572],
resolutions: [156543.03392811998, 78271.51696419998, 39135.758481959994, 19567.879241008, 9783.939620504, 4891.969810252, 2445.984905126, 1222.9924525644, 611.4962262807999, 305.74811314039994, 152.87405657047998, 76.43702828523999, 38.21851414248, 19.109257071295996, 9.554628535647998, 4.777314267823999, 2.3886571339119995, 1.1943285669559998, 0.5971642834779999, 0.29858214174039993],
matrixIds: ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19"]
})