Автоматический расширенный стиль для QGIS - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть база данных PostGIS, содержащая дороги, водоемы. POI, парки и т. Д., Которые я разработал в QGIS, следуя очень полезным постам: Руководство по расширенной маркировке для дорог OSM и «Карты Google» - стиль дорожных карт в QGIS от Аниты Грассер ,

Я программист на Python, и я хотел бы воссоздать эти стили автоматически, а не вручную, это возможно? Кто-нибудь может показать мне какой-нибудь пример?

Заранее большое спасибо!

1 Ответ

0 голосов
/ 28 ноября 2018

В QGIS Вы можете получить надписи в командной строке, выбрать слой и набрать

layer = iface.activeLayer()
layer.labelling()

Вы получите экземпляр QgsAbstractVectorLayerLabeling https://qgis.org/pyqgis/master/core/Abstract/QgsAbstractVectorLayerLabeling.html?highlight=qgsabstractvectorlayerlabeling

Чтобы перейти к символу Вам нужно набрать

layer = iface.activeLayer()
layer.renderer()

Вы получите класс QgsFeatureRenderer https://qgis.org/pyqgis/master/core/Feature/QgsFeatureRenderer.html?highlight=qgsfeaturerenderer#qgis.core.QgsFeatureRenderer.symbols

Вы также можете установить рендерер с помощью

renderer = QgsFeatureRenderer() 
layer.setRenderer(renderer)
...