Tengo una capa en QGIS, y quiero duplicarla a través de un complemento para poder usar la copia que desee, sin modificar el original.
Por supuesto layer2 = layer1
, no funcionará, porque todo lo que le sucede a la capa2 también le ocurrirá a la capa1, ya que es el mismo objeto detrás de todo esto.
La única forma en que encontré hacerlo es como tal:
QgsVectorFileWriter.writeAsVectorFormat(layer1,r"C:\Users\ABC\AppData\Local\Temp\NewLayer.shp","utf-8",None,"ESRI Shapefile")
layer2 = QgsVectorLayer("C:\Users\ABC\AppData\Local\Temp\NewLayer.shp","New vector","ogr")
#do something with layer2
¿Hay una manera simple de duplicar la capa en la memoria, sin tener que escribir un nuevo archivo?