Message posté par : nico-29
----------------------------------------
J'ai essayé ça:
-----------------
Code :
generator = QgsGeometryGeneratorSymbolLayer.create({})
generator.setSymbolType(QgsSymbol.Line)
expression = 'CASE WHEN abs( "SECTR1" - "SECTR2") < 360
THEN make_line($geometry, make_point($x + 0.1*cos(radians(180+90 - "SECTR1")),
$y + 0.1*sin(radians(180+90 - "SECTR1")))) END'
generator.setGeometryExpression(expression)
single_symbol_renderer = self.layer.renderer()
symbol = single_symbol_renderer.symbol()
symbol.appendSymbolLayer(generator)
self.layer.renderer().setSymbol(symbol)
iface.layerTreeView().refreshLayerSymbology( self.layer.id() )
self.layer.triggerRepaint()
-----------------
Mais ça fait planter QGIS (version 3.18)
Nico
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=343114#p343114
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