Untuk QGIS 3, QgsMapLayerRegistryfungsionalitas telah dipindahkan ke QgsProject.
Jadi, untuk mengulangi lapisan peta, Anda harus menggunakan struktur itu:
layers = QgsProject.instance().mapLayers()
.mapLayers()mengembalikan kamus yang terstruktur sebagai {layer_x_id: layer_x, layer_y_id: layer_y, ....}. Kemudian Anda dapat beralih di atas lapisan seperti:
for layer_id, layer in layers.items():
print(layer.name())
Karena .mapLayers()mengembalikan kamus ( dict), Anda juga dapat menggunakan .values()metode kamus yang mengembalikan hanya listyang berisi lapisan dalam kasus itu. Kemudian Anda dapat beralih di atas lapisan seperti:
layers = QgsProject.instance().mapLayers().values()
for layer in layers:
print(layer.name())
Jika Anda suka, Anda dapat menggunakannya dengan cara ini:
layers = QgsProject.instance().mapLayers() # dictionary
for layer in layers.values():
print(layer.name())