我在弄清楚如何遍历地图图层时遇到麻烦。我可以通过以下方式访问目录中当前突出显示的图层,iface.activeLayer()
但我希望我的代码在所有图层上均可使用。
我在API中看不到任何可轻松访问此功能的东西,找不到很好的在线示例,但也许我错过了什么?
我看不到你们如何使用QgsMapLayerRegistry或QgsProject。在QGIS 3.0.2中,这不起作用。但是,iface.mapCanvas()。layers()可以。好吧,有点。它似乎只为您提供活动的图层(您在“图层”窗格中检查的图层)。有谁知道如何获取所有图层的列表,甚至包括“图层”窗格中未选中的那些列表?另外,如果使用Plugin Builder,它会为您创建插件的外壳。运行功能具有“ self”参数,使用iface时需要使用该参数。即self.iface.mapCanvas()。layers(),仅供参考。
—
ajpieri