QGISでは、Pythonを使用して地理情報システムのレイヤーを複製することが可能です。これは、同じベクトルデータを異なる方法で表示するために役立ちます。
以下に、QGISのPythonコンソールからレイヤーを複製する方法を示します。
iface = qgis.utils.iface
vl = iface.activeLayer()
iface.addVectorLayer(vl.source(), vl.name() + "_clone", vl.providerType())
このコードは、アクティブなレイヤーを選択し、そのレイヤーのソース、名前、およびプロバイダタイプを使用して新しいレイヤーを作成します。
また、QGIS 3では、親レイヤーへの参照を保存せずにレイヤーのコピーを作成することもできます。
layer.selectAll()
clone_layer = processing.run("native:saveselectedfeatures", {'INPUT': layer, 'OUTPUT': 'memory:'})['OUTPUT']
layer.removeSelection()
QgsProject.instance().addMapLayer(clone_layer)
このコードは、レイヤーのすべての要素を選択し、それらをメモリ内の新しいレイヤーにコピーします。
以上の方法を使用することで、QGISとPythonを活用して地理情報システムのレイヤーを効率的に複製することが可能です。