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 Fri 16 June 2023 15:09

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

QGIS: Affichage pylones atlas

Bonjour,

Je fais un atlas par pylône. Le pylône constitue la couche de couverture de l'atlas.
Ce pylône est le pylône projet qui va remplacer le pylône existant qui est sur une autre couche (par exemple le pylône 1N remplace le pylône existant 1).
La restriction est que je ne peux étiqueter que le pylône projet de couverture et son pylône existant correspondant.

Je fais un étiquetage basé sur des règles sur le pylône existant

case when intersects($geometry, buffer(@atlas_geometry,44)) then    "TEXTSTRING"   end


mais ce n'est pas convaincant car cela peut étiqueter d'autres pylônes existants plus proches du pylône projet que son pylône existant.

Comment faire pour à coup sûr faire apparaître le pylône projet et uniquement son pylône existant?
Merci.

Hors ligne

 

#2 Mon 19 June 2023 09:42

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS: Affichage pylones atlas

Bonjour,
Dans ce cas, pourquoi vous utilisez une condition d'intersection spatiale? Une condition sur l'attribut me paraîtrait plus adaptée. Genre j'imagine que vous avez un champ qui vous indique quel poteau remplace lequel (ex, un champ ancien_poteau ou un champ de nom de poteau construit sur la base du nom du précédent, ou...). Et si c'est pas le cas, construisez ce champ et utilisez le.

Hors ligne

 

#3 Wed 21 June 2023 10:55

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Bonjour Santana,

J'ai une couche de pylones projetés avec la numérotation des pylones projetés :
NUM
1N
2N
3N
...

J'ai une couche de pylones existants avec la numérotation des pylones existants où j'ai rajouté une numérotation correspondant aux projetés  :
NUM  NUM PROJETES
1       1N
2       2N
3       3N
...      ...

Si c'est ce que vous avez demandé, quelle condition dois-je mettre pour que n'apparaisse que le pylone existant correspondant au pylone projeté de l'atlas?



Merci

Hors ligne

 

#4 Thu 22 June 2023 09:39

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS: Affichage pylones atlas

Bonjour,
La fonction attribute (variante 2) devrait faire l'affaire, je pense.

Hors ligne

 

#5 Fri 23 June 2023 16:42

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Bonjour Santana,

J'ai réalisé cet étiquetage basé sur des règles sur les pylones existants:

attribute( @atlas_feature,   "Num"  )


Num étant le numéro du pylone projeté dans la couche des pylones existants, mais cela ne fonctionne pas.
A noter que les pylones projetés et exitants ne sont pas au même endroit.

Hors ligne

 

#6 Fri 23 June 2023 17:57

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS: Affichage pylones atlas

Bonjour,
Le deuxième paramètre de la fonction attribute est un string, pas un champ; donc ce doit être de simple guillemets et non des doubles.
Ensuite, sous réserve que j'ai compris quelle couche est quoi, cette expression est juste la condition de filtre, donc quelque chose du genre

Code:

case when NUM = attribute( @atlas_feature,   'NUM'  ) then  "TEXTSTRING"   end

Hors ligne

 

#7 Sat 24 June 2023 11:55

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Bonjour Santanna,

Toujours pas. Voici en pj les deux fichiers :
- support projet  : champ qui s'affiche dans l'atlas : TEXTSTRING
- support existant : champ qui doit s'afficher dans l'atlas : TEXTSTRING
                           : champ de correspondance support projet/support existant : Num

En espérant que cela aidera à trouver l'expression adéquate.
Merci


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

Hors ligne

 

#8 Sat 24 June 2023 22:12

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Je sais pourquoi cela ne fonctionne pas. Pour afficher les pylones existants qui correspondent aux pylones projetés de l'atlas, il faut une colonne de correspondance dans la couche des pylones existants qui recense les pylones projetés. Seulement cette couche de pylones projetés n'est pas la couche de couverture de l'atlas!
La couche de couverture de l'atlas est une autre couche qui regroupe les pylones par propriétaire.
En gros pour un ou plusieurs propriétaires, il peut y avoir :
1N
2N
3N
4N - 5N
6N
7N - 8N - 9N
...

Donc dans la couche des pylones existants, on ne peut pas construire cette table de correspondance?

Hors ligne

 

#9 Mon 26 June 2023 16:45

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Donc il me semble bien que seule une requête basée sur la distance est possible pour faire apparaitre les pylones existants dans l'atllas...

Hors ligne

 

#10 Tue 27 June 2023 10:15

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS: Affichage pylones atlas

Bonjour

conejo a écrit:

Je fais un atlas par pylône. Le pylône constitue la couche de couverture de l'atlas.
Ce pylône est le pylône projet qui va remplacer le pylône existant qui est sur une autre couche (par exemple le pylône 1N remplace le pylône existant 1).


Je sais pourquoi cela ne fonctionne pas. (...) La couche de couverture de l'atlas est une autre couche qui regroupe les pylones par propriétaire.


Mon opinion de simple membre du forum: cette habitude de fournir des informations par bribes, et qui plus est contradictoires, rend vraiment difficile l'envie de trouver l'envie de vous aider à résoudre vos questionnements, aussi intéressants/stimulants qu'ils puissent paraître.

Dans l'hypothèse où j'ai finalement compris ce que vous tentez, on convertit le champ en liste et on vérifie si la valeur de l'entité de votre couche en fait partie, auquel cas on affiche son texte. Non testé!

Code:

case when
 array_contains(
  string_to_array(
   attribute(
    @atlas_feature,
    'lechampcontenantlesvaleursdutype7N - 8N - 9N'), -- attention aux guillemets
   ' - '),
 Num) -- j'ai pas trop compris si c'est num ou textstring à mettre ici
then
 TEXTSTRING
end

Hors ligne

 

#11 Tue 27 June 2023 17:47

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1670

Re: QGIS: Affichage pylones atlas

Bonjour Santanna,

Merci pour votre proposition. Cela fonctionne.
Mille excuses si ma demande de départ est confuse voire égarée.
Encore merci.

Hors ligne

 

Pied de page des forums

Powered by FluxBB