Как оформить слой из консоли?


9

Я новичок в консоли Python QGIS. Я пытаюсь загрузить растровый слой из консоли, установить crs и определенный стиль из файла qml.

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

Я хотел бы настроить информацию о проекции, а затем загрузить ее в QGIS

QgsMapLayerRegistry.instance().addMapLayer(layer)

У меня есть серый растр на окнах. Как настроить файл qml для загрузки?

Спасибо за вашу помощь

Ответы:


17

используйте QgsMapLayer :: loadNamedStyle

uri = "/home/user/style.qml"
layer.loadNamedStyle(uri) 

Спасибо за вашу помощь. К сожалению, это не работает. Как напишем ури?
Рено

Спасибо за вашу помощь, однако мне не удается заставить ее работать. Когда я запускаю следующую команду
Renaud

1
Спасибо за вашу помощь, однако мне не удается заставить ее работать. Когда я запускаю следующую команду, uri = "file:///home/renaud/palette.qml";layer.loadNamedStyle(uri) я получаю сообщение об ошибке: Стиль не найден в базе данных. Спасибо за помощь ? Как мне перейти строку в этом посте?
Рено

похоже theUri, немного вводит в заблуждение - использование простого имени файла должно работать (т.е. /home/renaud/palette.qml)
jef

Спасибо, сейчас все работает нормально. Еще раз, будь проще, это лучший способ!
Renaud
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.