banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Fri 30 April 2021 07:28

nico-29
Participant assidu
Lieu: Brest
Date d'inscription: 2 Jun 2006
Messages: 185

QGIS 3: pyqgis symbol au centroid d'un polygone

Bonjour,

Je cherche à afficher un symbole svg au centroide d'un polygone, via pyqgis.
Voici mon code:

Code:

symbol = QgsSymbol.defaultSymbol(self.layer.geometryType())
        svgStyle = {'name': path/to/symbol/TOWERS02.svg', 'size': '4'}
        symbol_layer = QgsCentroidFillSymbolLayer.create(svgStyle)
        
        if symbol_layer is not None:
            symbol.changeSymbolLayer(0, symbol_layer)

        renderer = QgsSingleSymbolRenderer(symbol)
        if renderer is not None:
            self.layer.setRenderer(renderer)

        iface.layerTreeView().refreshLayerSymbology( self.layer.id() )
        self.layer.triggerRepaint()

Le symbole ne s'affiche pas, mais j'ai un point rouge qui s'affiche au centroide du polygone (symbole par défaut je suppose).
Le chemin vers le symbole existe bien.

Comment faire?

Merci, Nico

Hors ligne

 

Pied de page des forums

Powered by FluxBB