Bagaimana cara membuat layer dari konsol?

9

Saya baru mengenal konsol python QGIS. Saya mencoba memuat lapisan raster dari konsol, mengatur crs dan gaya tertentu dari file qml.

layerPath = os.path.join(raster_dir,raster_name)
fileInfo = QtCore.QFileInfo(layerPath)
baseName = fileInfo.baseName()
layer = QgsRasterLayer(layerPath, baseName)

Saya ingin mengatur info proyeksi dan kemudian memuatnya ke QGIS

QgsMapLayerRegistry.instance().addMapLayer(layer)

Saya punya raster abu-abu di windows. Bagaimana saya bisa mengatur file qml untuk memuat?

Terima kasih atas bantuan Anda

Renaud
sumber

Jawaban:

17

gunakan QgsMapLayer :: loadNamedStyle

uri = "/home/user/style.qml"
layer.loadNamedStyle(uri) 
jef
sumber
Terima kasih atas bantuan Anda, Sayangnya, itu tidak berhasil. Bagaimana menulis uri?
Renaud
Terima kasih atas bantuan Anda, Namun saya tidak bisa membuatnya berfungsi. Ketika saya menjalankan perintah berikut
Renaud
1
Terima kasih atas bantuan Anda, Namun saya tidak bisa membuatnya berfungsi. Ketika saya menjalankan perintah berikut ini uri = "file:///home/renaud/palette.qml";layer.loadNamedStyle(uri) saya mendapatkan pesan kesalahan: Gaya tidak ditemukan dalam database. Terima kasih atas bantuanmu ? Bagaimana cara saya melompat baris dalam posting ini?
Renaud
sepertinya theUriagak menyesatkan - menggunakan nama file biasa harus bekerja (mis. /home/renaud/palette.qml)
jef
Terima kasih, sekarang berfungsi dengan baik. Sekali lagi, tetap sederhana adalah cara terbaik!
Renaud