#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
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