QGISでは、Pythonを使用して特定のレイヤを削除することが可能です。以下にその手順を示します。
レイヤの削除
QGISでレイヤを削除するためのPythonコードは次のとおりです。
def removeLayers(layerName):
for layer in QgsProject.instance().mapLayers().values():
if layer.name() == layerName:
QgsProject.instance().removeMapLayers([layer.id()])
この関数は、指定した名前のレイヤをプロジェクトから削除します。同じ名前のレイヤが複数存在する場合、それらすべてが削除されます。
ベクターレイヤの全フィーチャの削除
特定のベクターレイヤからすべてのフィーチャを削除するには、次のPythonコードを使用できます。
layer = iface.activeLayer()
with edit(layer):
listOfIds = [feat.id() for feat in layer.getFeatures()]
layer.deleteFeatures(listOfIds)
このコードは、アクティブなレイヤのすべてのフィーチャを削除します。
以上が、QGISとPythonを使用してレイヤを削除する方法についての説明です。これらのコードを適切に使用することで、QGISプロジェクトのレイヤ管理をより効率的に行うことができます。