Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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é ?

Annonce

Printemps des cartes 2024

#1 Mon 18 July 2016 11:32

Ferreira_Guillaume
Participant occasionnel
Date d'inscription: 19 Jan 2015
Messages: 10

QGIS & Plugin Python: afficher toutes les étiquettes pour cette couche

Bonjour,

Je suis entrain de créer un plugin en python pour qgis, mon problème est que je n'arrive pas à activer la propriété qui ce trouve dans étiquettes -->rendu-->afficher toutes les étiquettes pour cette couche (même celles en conflit). En fichier joint une copie d'écran de l'option

Mon code ressemble à ça pour la configuration de la couche :

Code:

        #On initialise la couche à configurer
        palLayer = QgsPalLayerSettings()
        palLayer.readFromLayer(pl)
        #On crée une variable avec un code couleur rgb
        red = QtGui.QColor(255,0,0)
        #on active l'etiquette
        palLayer.enabled = True 
        #On ajoute la couleur precedement initialisé
        palLayer.textColor = red
        palLayer.textFont.setPointSize(12)
        #On choisit un champ
        palLayer.fieldName='NUMERO_ILOT'
        palLayer.textNamedStyle= "Bold"        
        #On active le Tampon    
        palLayer.bufferDraw = True
        #Largeur du Tampon            
        palLayer.bufferSize = 1 
        #Correspond à l'emplacement 1 pour Décalage par rapport au centroide            
        palLayer.placement = 1
        #On rajoute un décalage en x en unité de carte             
        palLayer.xOffset = 20  
        #On rajoute un décalage en y en unité de carte             
        palLayer.yOffset = 20    
        #on enregistre la couche
        palLayer.writeToLayer(pl) 
        #On rafraichit le canvas
        iface.mapCanvas().refresh()

Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Mon 18 July 2016 17:32

JD
Moderateur
Date d'inscription: 8 Aug 2013
Messages: 722

Re: QGIS & Plugin Python: afficher toutes les étiquettes pour cette couche

Bonjour,

Je n'ai pas testé mais d'après l'api (https://qgis.org/api/classQgsPalLayerSettings.html) ça semble être l'attribut displayAll, soit :

Code:

palLayer.displayAll = True

Dernière modification par lejedi76 (Mon 18 July 2016 17:33)

Hors ligne

 

Pied de page des forums

Powered by FluxBB