javascript - QGIS-Server LeafLet 图层顺序
问题描述
我有一个传单项目渲染L.TileLayers.WMS
和L.GeoJSON
图层。WMS 和 GeoJSON 图层由 QGIS-Server 提供服务。我正在尝试重新排序pane
用于 GeoJSON 和zIndex
WMS 图层bringToFront()
和bringToBack()
方法的图层。他们都没有做这项工作。
似乎 WMS 图层是按照 QGIS 项目 .qgs 中的顺序加载的。谁能指出我在下面的代码中缺少的内容:
let qgisserverBaseURL = 'http://10.0.0.113/cgi-bin/qgis_mapserv.fcgi?'
let cbers4Options = {
map: '/home/qgis/project/inde.qgs',
layers: 'cbers4',
zIndex: 500,
tiled: true,
format: 'image/png',
transparent: true,
srs: 'EPSG:4326',
version: '1.3.0'
}
let cbers4 = new L.TileLayer.WMS(qgisserverBaseURL, cbers4Options)
map.createPane('pane400');
map.getPane('pane400').style.zIndex = 400;
map.getPane('pane400').style.pointerEvents = 'none';
let biomas = new L.GeoJSON(null, {
style: biomas_style,
onEachFeature: onEachFeature,
pane: 'pane400'
});
let overLayers = {
'cbers4': cbers4,
'biomas': biomas,
};
L.control.layers(baseMaps, overLayers, {
collapsed: false,
}).addTo(map);
根据这个配置,cbers4 层应该出现在 biomas 层之上,但它并没有通过。如果我使用cbers4.bringToFront()
andbiomas.bringToBack()
方法,图层顺序也不会改变。任何帮助将不胜感激。
解决方案
推荐阅读
- angular - 如何在导出的函数中禁用拦截器?
- python-sphinx - 如何在 reStructuredText (sphinx) 中嵌入 HTML 或 XML,以便浏览器 cna 呈现它们?
- python - 一组整数内的聚类分析
- android - build.gradle 错误,无法解决:常见
- android - Android 获取 Json
- networking - Terraform Provisioner “local-exec” 未按预期工作 | VPC 对等连接接受问题
- jpa - Flyway 与 JPA + OSGi 的集成
- julia - 为 CHOLMOD.Factor 预分配内存
- java - 在 TOMCAT 8 上生成 AIMLBOT
- mysql - 将 mysql 查询转换为使用 laravel