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

State Of The Map 2024

#1 Wed 20 January 2021 09:28

mod
Juste Inscrit !
Date d'inscription: 3 Mar 2014
Messages: 1

QGIS 3.10: Creation d'atlas

Bonjour,
Je dois réaliser des atlas de plusieurs communes.
J'ai une couche vectorielle de communes sur laquelle je m'appuie pour le module atlas et ainsi automatiser la création des atlas pour toutes les communes de la couche.Cela fonctionne très bien.
Mes 2 questions:
1-Peux t-on, sur la même mise en page, inclure, sur une nouvelle page, une liste d'objet (style index) des éléments inclus dans la commune en traitement?
J'ai pu inclure les tables attributaires des éléments voulus mais le rendu n'est pas concluant.
2-Peux t-on, sur la même mise en page également, inclure une page où un zoom serait réalisé du centre bourg de la commune en traitement à partir d'une autre couche vectorielle existante qui localise ces centres bourgs?

Merci pour vos contributions.

Hors ligne

 

#2 Wed 20 January 2021 14:52

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

Re: QGIS 3.10: Creation d'atlas

Bonjour,
pour le point 1 qu'est ce que vous souhaitez exactement ? Visuellement parlant ?

Pour le point 2 c'est tout à fait possible mais c'est pas trivial.

Dans l'idée il va falloir un lien entre votre couche centre-bourg et votre couche de commune.

Etape 1 :
Ajouter la carte centre-bourg dans votre composeur
Contrairement à la carte principale celle-ci ne sera pas contrôlée par l'atlas.
En revanche, on peut quand même la contrôler grâce à des champs calculés dans la partie emprise qui se situe dans les propriétés de l'objet carte.

Il va falloir entrer une formule pour :
Xmin, Ymin, Xmax, Ymax

C'est là que cela se complique.

Pour calculer x_min on utilsera par exemple

Code:

x_min(buffer(geometry(get_feature('<nom couche centre bourg>','<code_commune_dans_couche_centre_bourg>',"<code_commune_dans_couche_couverture>")),<rayon>))

Etape 2 : création de variable pour faciliter la gestion du projet
Pour plus de flexibilité, je conseille de créer 2 variables dans le projet.

Pour ce faire, Projet > Propriétés > Variable et +

Variable 1 : rayon
La première qu'on nommera rayon et qu'on pourra appeler via @rayon. Elle nous permettra d'ajuster le zoom

Mettre 200 dans rayon

Variable 2 : centre_bourg
La seconde qu'on nommera centre_bourg et qu'on pourra appeler via @centre_bourg

Code:

buffer(geometry(get_feature('<nom couche centre bourg>','<code_commune_dans_couche_centre_bourg>',"<code_commune_dans_couche_couverture>")),@rayon)

Si votre couche centre_bourg s'appelle centre_bourg et que le champs commune entre la commune et le centre_bourg s'appelle insee_com alors l'expression sera :

Code:

buffer(geometry(get_feature('centre_bourg','code_insee',"code_insee")),@rayon)

Attention à bien respecter les simples guillemets et les doubles guillemets

Etape 3 : saisir les expressions dans l'emprise de la carte de centre-bourg


Renseigner les valeurs suivantes pour xmin, ymin, xmax, ymax

Code:

x_min(eval(@centre_bourg))
y_min(eval(@centre_bourg))
x_max(eval(@centre_bourg))
y_max(eval(@centre_bourg))

Etape 4 : adapter la valeur du rayon dans les propriétés si beosin

Hors ligne

 

Pied de page des forums

Powered by FluxBB