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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 28 March 2017 18:29

maxou.lebourg
Participant occasionnel
Lieu: Paris
Date d'inscription: 15 Mar 2017
Messages: 17

Changer l'expression d'une étiquette tuilé en annotation

Bonjour

je souhaiterais changer l'expression des étiquettes d'une couche d'annotation tuilé avec certaines conditions:
par défaut ce qui est affiché sur ma carte vient du champ TextString de ma couche d'annot. Naturellement je me suis dirigé vers les propriétés de la couche, section affichage, Expression d'affichage
Puis j'ai inscris mon code en Python (le code est pas très compliqué: si j'ai cette valeur dans ce champ, alors affiche moi l'étiquette et un petit texte)
(voir ci-dessous les screenshots)
http://imageshack.com/a/img922/6629/2BQkYH.jpg
http://imageshack.com/a/img922/8924/kj8zvb.jpg
http://imageshack.com/a/img924/2267/2ejtZR.jpg



Évidemment si je suis là c est que ça n'a pas marché ^^ (même si la vérif m'indique que le code est bon)

Puis j'ai remarqué que peu importe le champ que je mettais dans Expression d'affichage, il continuait de m'afficher ce que contenait le champ TextString.

Si quelqu'un a une solution.
Bien entendu je pourrais tout simplement modifier directement ce champ TextString (ça m'aurait pris 5 min contre l'1h que tout ceci m'a pris ^^) mais ça m’intéresserait de savoir si on peut modifier l'expression des étiquettes tuilés en annot (comme sur des étiquettes toutes simples).

Merci.

Dernière modification par maxou.lebourg (Tue 28 March 2017 18:34)

Hors ligne

 

#2 Wed 29 March 2017 16:06

jeromehaas
Participant occasionnel
Lieu: Besançon
Date d'inscription: 22 Feb 2012
Messages: 33

Re: Changer l'expression d'une étiquette tuilé en annotation

Bonjour,

Je ne suis pas très bon en python, mais est ce le problème ne pourrais pas être le "is" de la condition ? Et en le remplaçant par "=" ?

Hors ligne

 

#3 Wed 29 March 2017 16:34

nitram
Participant assidu
Lieu: Brest
Date d'inscription: 19 May 2009
Messages: 990
Site web

Re: Changer l'expression d'une étiquette tuilé en annotation

Bonjour,

L'expression d'affichage affiche une 'infobulle' lorsque vous survolez l'entité avec votre pointeur ou s'affiche avec l'outil d'interrogation d'entité.
Fonctionnement de l'expression d'affichage pour un champ @ https://desktop.arcgis.com/fr/arcmap/10 … -field.htm

Le texte 'étiquette' affiché d'une classe d'annotation sera toujours (selon moi) le contenu du champ TextString.

Martin

Hors ligne

 

#4 Wed 29 March 2017 17:20

maxou.lebourg
Participant occasionnel
Lieu: Paris
Date d'inscription: 15 Mar 2017
Messages: 17

Re: Changer l'expression d'une étiquette tuilé en annotation

Salut à tous les deux

Jérôme : non le code python est bon et j'ai pu le vérifier, le "is" en python est comme le "like" en VBA ou en SQL, le "=" en python servirait plutôt à affecter une valeur à une variable, et le "==" est un opérateur de comparaison (comme le is ou le like) mais pour les nombres.

Martin : effectivement l'expression d'affichage pour les annotations sert uniquement à ces info-billes, c'est bon à savoir même si l'outil est pas hyper fonctionnel (faut rester bien 2sec sur l'entité et encore il marche pas partout) mais il s'affiche bien avec ma condition

Merci


Conclusion : les étiquettes conditionnelles c'est bien, mais seulement pour celles liées directement à une couche, dès qu'on les transforme en annotations l'affichage est lié au champ à partir duquel est fait l'étiquette originelle ==> pas de modif' possible à par l’apparence et la position

Hors ligne

 

Pied de page des forums

Powered by FluxBB