Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
#1 Tue 22 December 2020 14:52
- Carl85
- Participant occasionnel
- Date d'inscription: 9 Jan 2020
- Messages: 11
QGIS: Texte commune dans mise en page de carte
Bonjour,
Je dois réaliser une carte au sein de ma collectivité.
J'ai une couche commune avec le périmètre des mes 10 communes faisant partie d'une commune nouvelle
J'ai une couche parcelle, une trentaine de parcelles, dispatchées sur mes 10 communes.
J'ai généré un atlas dans ma mise en page à partir de ma couche parcelle.
Mon problème est le suivant, j'aimerais insérer un texte "Commune déléguée de ..." avec une expression qui me permette d'indiquer le nom de la commune déléguée sur laquelle se trouve la parcelle lorsque je change de page.
J'espère avoir été assez explicite.
Dans l'attente de vos réponse, d'avance merci.
Cordialement
Hors ligne
#2 Tue 22 December 2020 21:48
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1126
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Je ne suis pas très à l'aise avec les fonction d'aggrégation mais vous pouvez essayer cela :
Code:
aggregate(layer:='CoucheCommune', aggregate:='max', expression:="champNomCommune", filter:=intersects( $geometry, geometry(@parent) ) )
Sinon, dans la version 3.16, la fonction overlay_intersects( devrait faire l'affaire.
Hors ligne
#3 Wed 23 December 2020 15:51
- Carl85
- Participant occasionnel
- Date d'inscription: 9 Jan 2020
- Messages: 11
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Mercie de ta réponse, mais je n'ai pas réussi.
Auriez vous d'autres solutions
D'avance merci.
Cordialement
Hors ligne
#4 Mon 28 December 2020 07:16
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3961
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Mercie de ta réponse, mais je n'ai pas réussi.
Auriez vous d'autres solutions
Merci d'indiquer ce que vous avez essayé qui n'a pas réussi (l'adaptation du code suggéré et comment ? la version 3.16?). Ça aiderait grandement à vous aider. Et peut-être un peu de lecture à https://docs.qgis.org/3.16/fr/docs/user … label-item
Hors ligne
#5 Thu 28 November 2024 17:02
- VincentGIS
- Juste Inscrit !
- Date d'inscription: 28 Nov 2024
- Messages: 3
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Nouveau ici donc débutant grandement.
Merci pour vos deux réponses et le lien vers la lecture je cherchais à faire quelquechose de similaire.
J'ai réussi à faire marcher les différentes variables d'aggregate à l'exception de filter que je ne maitrise pas du tout.
Auriez-vous svp un lien pour que je comprenne comment marche cette variable et les valeur que je peux mettre dedans?
En gros, je suis en train de me créer un Layout avec un joli cartouche en bas. J'ai une zone de texte où j'aimerais faire apparaître le nom de la commune (ou des communes).
Code:
[%aggregate(layer:='Communes', aggregate:='concatenate', expression:="NOM", concatenator := ', ')%]
Ceci marche très bien et me débite le nom de toutes les communes de ma couche 'Communes', spéarées par le concatenator.
Quand j'essaye de rajouter le filtre
Code:
filter := contains( geometry( @parent ), $geometry ),
- que j'ai copié très bêtement sans comprendre des exemple dans le lien -
Ca ne marche plus et la case reste vide.
J'ai donc besoin de comprendre comment ce filtre marche.
Idélament j'aimerais pouvoir afficher les communes présentes sur la carte présente sur mon layout, donc un filtre en fonction du "zoom" actuel, si une telle chose existe...
Merci pour votre aide! ... QGIS 3.40.0-Bratislava
Hors ligne
#6 Thu 28 November 2024 18:24
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3961
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
On n'a pas la discussion à laquelle vous faites référence. Possibilité de l'indiquer afin qu'on raccroche les wagons, pour tous?
Pour ce qui est du code, j'imagine que vous vous inspirez de la doc QGIS; geometry(@parent) renvoie à une entité particulière ici, qui est celle de l'atlas.
Dans votre cas, essayez avec
Code:
filter := contains( map_get( item_variables( 'iddevotreobjetcartedanslamiseenpage'), 'map_extent'), $geometry ),
Des exemples avec map_get sont donnés dans la suite de la page de doc.
Hors ligne
#7 Fri 29 November 2024 23:01
- VincentGIS
- Juste Inscrit !
- Date d'inscription: 28 Nov 2024
- Messages: 3
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Ah zut, j'ai du créer un nouveau message au lieu de répondre à celui que je consultais... Je vais essayer de le retrouver...
Merci pour la réponse, j'essaye ça dès lundi matin.
Hors ligne
#8 Fri 29 November 2024 23:05
- VincentGIS
- Juste Inscrit !
- Date d'inscription: 28 Nov 2024
- Messages: 3
Re: QGIS: Texte commune dans mise en page de carte
Je faisais référence à ce message
https://georezo.net/forum/viewtopic.php?id=122130
Hors ligne
#9 Fri 29 November 2024 23:26
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3961
Re: QGIS: Texte commune dans mise en page de carte
Bonsoir,
Sujets fusionnés.
Hors ligne
#10 Sun 01 December 2024 14:46
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1674
Re: QGIS: Texte commune dans mise en page de carte
Bonjour,
Pouvez-vous expliquez votre couche de couverture.
S'agit-il d'une seule parcelle ou de plusieurs parcelles?
Hors ligne
#11 Wed 11 December 2024 17:37
- 20-100-LV
- Participant occasionnel
- Date d'inscription: 2 Mar 2022
- Messages: 31
Re: QGIS: Texte commune dans mise en page de carte
Carl85
Bonjour,
Mercie de ta réponse, mais je n'ai pas réussi.
Auriez vous d'autres solutions
D'avance merci.
avez vous essayé la piste proposée par GlaDal ?
le code ci-dessous saisi dans une zone de texte d'une mise en page fonctionne chez moi ...
Code:
array_to_string(overlay_intersects('coucheAvecLesCommunes', champAvecLeNomDeLaCommune))
Hors ligne