#1 Sun 22 September 2024 16:16
- laurent00
- Participant assidu
- Date d'inscription: 6 Aug 2007
- Messages: 399
QGIS: Gestion du zoom dans atlas de miniature
bonsoir
j'ai un atlas avec sur une page 6 miniatures qui affichent les 6 premiers id de ma couche puis les 6 suivants etc.
le calage de la map2 se fait en ajustant les coordonnées de l'emprise de la map1 par une formule de ce genre ci-dessous pour les 4 points de l'emprise
Code:
with_variable( 'w', bounds_width( map_get(item_variables('map1'),'map_extent')), x(geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 1 )))-@w/2)
cela marche bien mais du coup je ne peux pas gérer le zoom sur la map2 il est forcément dépendant de la première emprise map1
comment arriver à gérer ce zoom, la fonction /marge autour de l'objet/ n'est pas prise en compte ou n'est pas active
merci d'une idée
Lj
Dernière modification par laurent00 (Sun 22 September 2024 16:18)
Hors ligne
#2 Hier 15:34
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3910
Re: QGIS: Gestion du zoom dans atlas de miniature
Bonjour,
En fait, vous ne pouvez pas à la fois vouloir bloquer les 4 coins de votre objet carte (ce que vous faites avec les expressions), et demander à QGIS d'en ajuster l'étendue. Vous, l'humain, avez déjà tout bloqué. La marge autour de l'entité ne s'applique que lorsque la carte est soumise à l'atlas, même si je constate que la valeur est éditable même hors atlas (bug d'affichage).
Essayez donc avec (le calcul de la marge ici 10% est intégré dans celui des limites et dépend de l'entité visualisée)
Code:
with_variable( 'geom', geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 1 )), with_variable('w', bounds_width(@geom), xmin(@geom) - (@w * 0.1)))
En ligne
#3 Hier 15:45
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3910
Re: QGIS: Gestion du zoom dans atlas de miniature
Je viens de voir sur les images qu'en fait vous activiez le rapport sur les autres cartes aussi. Et pas que la première. Je viens de tester deux trois trucs mais le comportement ne me semble pas cohérent selon que l'entité id+1 existe réellement ou pas.
En ligne
#4 Hier 18:37
- laurent00
- Participant assidu
- Date d'inscription: 6 Aug 2007
- Messages: 399
Re: QGIS: Gestion du zoom dans atlas de miniature
vous activiez le rapport sur les autres cartes aussi. Et pas que la première.
effectivement cela ne paraît pas utile je vais tester encore
LJ
Dernière modification par laurent00 (Hier 21:00)
Hors ligne
#5 Hier 21:02
- laurent00
- Participant assidu
- Date d'inscription: 6 Aug 2007
- Messages: 399
Re: QGIS: Gestion du zoom dans atlas de miniature
avec ces 4 formules celles des xmin et xmax ne ramènent que 'nan'
Code:
with_variable( 'geom', geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 2 )), with_variable('w', bounds_width(@geom), xmin(@geom) - (@w * 0.1)))
Code:
with_variable( 'geom', geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 2 )), with_variable('h', bounds_width(@geom), ymin(@geom) - (@h * 0.1)))
Code:
with_variable( 'geom', geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 2 )), with_variable('w', bounds_width(@geom), xmax(@geom) - (@w * 0.1)))
Code:
with_variable( 'geom', geometry(get_feature_by_id( @atlas_layername, @atlas_featureid + 2 )), with_variable('h', bounds_width(@geom), ymax(@geom) - (@h * 0.1)))
Dernière modification par laurent00 (Hier 21:02)
Hors ligne