Jak stylizować warstwę z konsoli?

9

Jestem nowy w konsoli python QGIS. Próbuję załadować warstwę rastrową z konsoli, ustawić crs i określony styl z pliku qml.

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

Chciałbym skonfigurować informacje o projekcji, a następnie załadować je do QGIS

QgsMapLayerRegistry.instance().addMapLayer(layer)

Mam szary raster na oknach. Jak skonfigurować ładowanie pliku qml?

Dzięki za pomoc

Renaud
źródło

Odpowiedzi:

17

użyj QgsMapLayer :: loadNamedStyle

uri = "/home/user/style.qml"
layer.loadNamedStyle(uri) 
jef
źródło
Dziękuję za pomoc, niestety nie działa. Jak napisać URI?
Renaud
Dziękuję za pomoc, jednak nie mogę jej uruchomić. Kiedy uruchamiam następujące polecenie
Renaud
1
Dziękuję za pomoc, jednak nie mogę go uruchomić. Po uruchomieniu następującego polecenia uri = "file:///home/renaud/palette.qml";layer.loadNamedStyle(uri) pojawia się komunikat o błędzie: Nie znaleziono stylu w bazie danych. Dziękuję za Twoją pomoc ? Jak przeskoczyć wiersz w tym poście?
Renaud
wygląda theUrina nieco mylące - użycie zwykłej nazwy pliku powinno działać (tj. /home/renaud/palette.qml)
jef
Dziękuję, teraz działa dobrze. Jeszcze raz, zachowaj prostotę to najlepszy sposób!
Renaud