gpt4 book ai didi

gis - 如何使用pyqgis列出Geopackage上的所有图层?

转载 作者:行者123 更新时间:2023-12-04 14:45:49 31 4
gpt4 key购买 nike

我正在研究 pyqgis(使用 pyqgis cookbook 并开始加载矢量图层。

到目前为止,我能够打开一个我已经知道存在于 geopackge 中的层。

iface.addVectorLayer("./bcim_2016_21_11_2018.gpkg|layername=lim_unidade_federacao_a", "Nome Vetor", "ogr")

现在,我想知道如何列出地理包上托管的所有图层,以便可以定义要加载的图层?
提前致谢

费利佩

最佳答案

我刚刚在 PyQGIS CookBook - cheatsheet 上发现了这种可能性,这回答了我的问题。

from qgis.core import QgsVectorLayer, QgsProject

fileName = "/path/to/gpkg/file.gpkg"
layer = QgsVectorLayer(fileName,"test","ogr")
subLayers =layer.dataProvider().subLayers()

for subLayer in subLayers:
name = subLayer.split('!!::!!')[1]
uri = "%s|layername=%s" % (fileName, name,)
# Create layer
sub_vlayer = QgsVectorLayer(uri, name, 'ogr')
# Add layer to map
QgsProject.instance().addMapLayer(sub_vlayer)

关于gis - 如何使用pyqgis列出Geopackage上的所有图层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57015320/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com