Message posté par : Christophe
----------------------------------------
Un exemple de code complet :
-----------------
Code :
def createLineGeomGenSymbolLayer(
self,
exp, # Expression générant la géométrie
width=0.2, # Épaisseur de la ligne
color=QColor(227, 26, 28, 255), # Couleur de la ligne
penStyle=Qt.SolidLine # Style de la ligne
) -> QgsGeometryGeneratorSymbolLayer:
""" Création d'une couche de symbole générateur de géométrie
ligne """
lnGenSymbolLayer = QgsGeometryGeneratorSymbolLayer.create(
{'geometryModifier': ''})
lnGenSymbolLayer.setGeometryExpression(exp)
lnGenSymbolLayer.setSymbolType(QgsSymbol.Line)
lnSubSymbol = QgsLineSymbol()
lnSubSymbol.deleteSymbolLayer(0)
lnSubSymbolLayer = QgsSimpleLineSymbolLayer()
lnSubSymbolLayer.setWidth(width)
lnSubSymbolLayer.setColor(color)
lnSubSymbolLayer.setPenStyle(penStyle)
lnSubSymbol.appendSymbolLayer(lnSubSymbolLayer)
lnGenSymbolLayer.setSubSymbol(lnSubSymbol)
return lnGenSymbolLayer
-----------------
Essaie avec une expression de génération plus simple.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=343125#p343125
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net