Mengubah rendering warna dari beberapa lapisan raster sekaligus

Aug 17 2020

Saya memiliki banyak lapisan raster dalam proyek QGIS saya dan semuanya saat ini ditampilkan sebagai: Warna multiband Pita merah: Pita 1 Pita hijau: Pita 2 Pita biru: Pita 3

Saya ingin tahu apakah ada cara untuk mengubah rendering semua lapisan raster menjadi: Pita merah: Pita 3 Pita hijau: Pita 2 Pita biru: Pita 1 tanpa harus melakukannya dengan tangan, lapis demi lapis.

Jawaban

3 BERA Aug 17 2020 at 02:04

Anda bisa menggunakan pyqgis. Ini akan mengubah simbologi semua lapisan raster di pohon lapisan menjadi pita merah = pita 3, hijau = pita 2, biru = pita 1:

for lyr in QgsProject.instance().mapLayers().values():
    if isinstance(lyr, qgis.core.QgsRasterLayer): #Check to make sure it is a raster layer
        r = lyr.renderer().clone()
        r.setRedBand(3)
        r.setGreenBand(2)
        r.setBlueBand(1)
        lyr.setRenderer(r)
        lyr.triggerRepaint()

1 bugmenot123 Aug 18 2020 at 01:18

Siapkan untuk satu lapisan.

Klik kanan layer itu, Styles -> Copy Style.

Pilih semua layer lain yang ingin Anda terapkan gaya yang sama, klik kanan, Styles -> Paste Style.