Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

GEODATA DAYS 2024

#1 Thu 27 February 2020 12:22

Oaziss
Juste Inscrit !
Date d'inscription: 7 Jul 2017
Messages: 5

QGIS: Orientation atlas

Bonjour !

Je me tourne vers le forum parce que je ne trouve pas de solution à mon problème.

Je travaille sur un tracé de voie verte, qui est constitué d'un long tracé ( 1 polyligne ) et de points kilométriques (42 points) situés le long de ce tracé.
Je dois générer un atlas qui permettrait d'avoir des vues de chaque tronçon orientés toujours avec le départ vers la gauche et l'arrivée vers la droite.

Pour cela, j'ai découpé ma voie en de multiples polylignes qui représentent chacune un tronçon entre deux PK (Pour cette étape, je suis passé par "fragmenter ligne avec couche de points" de SEXTANTE sur gvSIG).

J'ai généré, sur QGIS, des géométries d'emprise, en espérant pouvoir récupérer l'angle des rectangles générés et les appliquer à mon atlas, mais je ne comprends pas comment ces angles sont calculés. Parfois, cela fonctionne très bien, et parfois (souvent), pas du tout. J'ai surement loupé quelque chose, mais je ne sais pas quoi.

Je vous laisse à dispositions les quelques données dont je vous parle ici pour observer tout ça :
https://www.transfernow.net/QEYWuS022020
Et si vous avez des questions, je vous répondrai !

D'avance merci, Rémi

Hors ligne

 

#2 Thu 27 February 2020 13:39

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1000

Re: QGIS: Orientation atlas

Bonjour,

Si vous travaillez sur Qgis 2, il y a (de mémoire) une extension qui vous permet de créer une grille d'indexation suivant une couche linéaire. Très pratique dans votre cas (dans les extensions tapez 'grid along linear' ou 'atlas' et voyez les extensions qu'il vous propose).

Hors ligne

 

#3 Thu 27 February 2020 17:25

Oaziss
Juste Inscrit !
Date d'inscription: 7 Jul 2017
Messages: 5

Re: QGIS: Orientation atlas

Merci GlaDal ! Je suis sous QGIS 3.10, et je n'ai pas trouvé l'extension dont vous parliez, sauf si c'est "Feature grid creator", mais elle ne fonctionne pas.
Dans le même registre, je peux créer une grille, directement depuis l'onglet "vecteur", mais je ne vois pas en quoi elle peut m'aider pour mon soucis..

Hors ligne

 

#4 Fri 28 February 2020 10:42

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1000

Re: QGIS: Orientation atlas

Bonjour,

Malheureusement, cette extension n'a pas été mise à jour pour la version 3 !

Hors ligne

 

#5 Fri 28 February 2020 14:08

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 401

Re: QGIS: Orientation atlas

Bonjour,

Si je comprends bien, tu cherches à faire tourner la carte pour qu'elle entre dans ta mise en page qui est en long.
Déjà, il faut que tu actives "Contrôlé par l'atlas" en choisissant si tu veux une marge autour de ton objet de référence de l'atlas (de la couche de couverture). Voir image jointe (je n'arrive pas à l'insérer dans le message, ça n'a pas l'air de fonctionner).

Ensuite, en regardant de plus près les angles que tu as dans tes données ne sont pas toujours indiqué en partant du 0°.
Par exemple, en mettant en expression dans l'angle -"angle" (soit ton angle mais en négatif, rotation sens anti-horaire), ça fonctionne pour certains objets mais pour les autres la géométrie est en hauteur au lieu d'être en longueur.

Donc il faut une expression dépendante des données height et width, comme tu as un peu fait dans ton expression actuelle :

Code:

CASE 
WHEN  "height" > "width"  THEN 90- "angle"  
WHEN "height" < "width" THEN  0-"angle"  
END

Et là ça fonctionne bien.

Dernière modification par p.jeremie (Fri 28 February 2020 14:09)


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

Hors ligne

 

#6 Fri 28 February 2020 15:10

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1000

Re: QGIS: Orientation atlas

Bonjour,

Une autre solution consiste à utiliser l'algorithme 'Emprise orientée minimale (OMBB)' sur votre couche de linéaire découpé. Servez-vous en pour générer votre atlas. Pour la fleche Nord, vous pouvez la synchroniser avec votre carte (Propriétés de l'objet Nord, rotation de l'image, assurez-vous que ce soit la bonne carte de synchronisée)

Hors ligne

 

#7 Fri 28 February 2020 16:36

Oaziss
Juste Inscrit !
Date d'inscription: 7 Jul 2017
Messages: 5

Re: QGIS: Orientation atlas

Merci à vous deux !
OMBB donne le même résultat que les géométries d'emprises. Donc de ce côté là, c'est bon.

Par contre, le petit "-" de p.jeremie m'a bien aidé ! Merci, ça corrige un de mes deux soucis ! Maintenant, dans mon atlas la carte subit toujours une rotation qui me pemet d'avoir le tronçon "couché", pour ma présentation en paysage.
Il ne me reste qu'à régler le soucis du sens. Parfois, le point de départ du tronçon est sur la droite, et parfois sur la gauche. Je pense que c'est du à la géométrie d'emprise.

Mais merci à vous deux, en tout cas !

Je continue à chercher de mon côté, et je vous transmets ma solution si j'en trouve une ! (En évitant de devoir les corriger à la main, justement.)

Hors ligne

 

#8 Fri 28 February 2020 17:11

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 401

Re: QGIS: Orientation atlas

Ce que tu écris confirme que les angles sont assez étranges...
Personnellement au vu du nombre d'objets je reprendrais les angles à la main pour mettre la bonne valeur en faisant soit -angle soit 90-angle soit 180-angle soit 270-angle. Ou quelque chose du genre.
Comme ça tu pourras prendre directement angle_corrigé comme rotation.

Hors ligne

 

#9 Mon 02 March 2020 08:13

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1000

Re: QGIS: Orientation atlas

L'autre solution consisterait à changer le sens de la géométrie en utilisant l'algorithme 'inverse la direction des lignes' et en activant 'editer les entités sur place' (icone en haut à gauche des options de paramétrage du panneau de boite à outils de traitements) qui permet de ne pas créer une couche temporaire à chaque modification.
En inversant le sens de la géométrie, l'orientation de votre atlas devrait être ok. A tester.

Hors ligne

 

#10 Mon 02 March 2020 09:56

Oaziss
Juste Inscrit !
Date d'inscription: 7 Jul 2017
Messages: 5

Re: QGIS: Orientation atlas

Merci à vous deux !
Je vais corriger les angles de chaque emprise, une à une, en effet. Je n'ai encore pas beaucoup d'entités (même si leur nombre devrait doubler dans la journée), et je recommencerai la manip' si besoin en cas de changement !

Hors ligne

 

#11 Hier 15:51

Mazalia
Participant occasionnel
Date d'inscription: 19 Feb 2021
Messages: 16

Re: QGIS: Orientation atlas

Bonjour,
Je me permets de déterrer ce sujet car la problématique ressemble au souci que je rencontre.

Je dispose d'une couche de 55 entités polygonales rectangles qui me permettent de découper par secteurs un tracé afin de réaliser un atlas. Les orientation de ces rectangles sont variables et je ne parviens pas à paramétrer l'atlas dans le but que chaque page s'adapte et se mette en "paysage" dans le gestionnaire de mise en page.

Mon problème est que le tracé correspond à une route et que les rectangles sont disposés de sorte à suivre le tracé de la route, il me faudrait donc pour certains une rotation de -100° environ et pour d'autre 10° degré seulement voir aucune rotation.

Existe-t-il un moyen de paramétrer ma couche ou mon gestionnaire pour avoir le rendu escompté ?

Hors ligne

 

#12 Hier 21:09

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 401

Re: QGIS: Orientation atlas

Soit tu as un attribut pour chaque rectangle d'emprise, qui te permet de faire tourner comme il faut ta mise en page.
Soit tu découpé ton linéaire avec tes rectangles et tu utilises l'algorithme 'Emprise orientée minimale (OMBB)' indiqué plus haut par GlaDal pour calculer une couche de couverture de ton atlas qui soit déjà orientée avec les angles.

Il doit aussi y avoir d'autres solutions.

Tu as besoin de changer l'orientation de la page aussi ou tous les rectangles sont en paysage ou en portrait ?

Hors ligne

 

#13 Aujourd'hui 09:46

Mazalia
Participant occasionnel
Date d'inscription: 19 Feb 2021
Messages: 16

Re: QGIS: Orientation atlas

p.jeremie a écrit:

Soit tu as un attribut pour chaque rectangle d'emprise, qui te permet de faire tourner comme il faut ta mise en page.

Soit tu découpé ton linéaire avec tes rectangles et tu utilises l'algorithme 'Emprise orientée minimale (OMBB)' indiqué plus haut par GlaDal pour calculer une couche de couverture de ton atlas qui soit déjà orientée avec les angles.

Il doit aussi y avoir d'autres solutions.

Tu as besoin de changer l'orientation de la page aussi ou tous les rectangles sont en paysage ou en portrait ?


Je vois, dans le cas ou je choisi la méthode de l'attribut, il faut que je fasse plusieurs test pour trouver le bon angle du coup ?

Concernant l'autre méthode, je risque d'avoir le même souci qu'évoqué plus haut en terme de sens non ? Avoir mon ouest à l'est et inversement…


Je vais tester tout ça et je vois.

Edit 1 :
Après quelques essais je pense que je ne suis pas loin de ce que j'aimerai obtenir. J'ai appliqué l'algorithme (OMBB)' directement sur ma couche polygone et ça affecte bien une valeur d'angle à chacune de mes entités. Seul problème restant c'est qu'il considère les rectangles de ma couche polygone en format portrait, donc l'angle est de 0 lorsqu'un rectangle est orienté en portrait.
J'ai pensé à une modif Excel avec un calcul (angle calculé -90°) pour corriger ça mais pas sur que cette méthode de barbare fonctionne ^^

Edit 2 : Je n'y avais pas pensé avant mais cela corrige uniquement les rectangles qui sont orienté en format portrait, pour les autres il faudrait que j'adapte la correction en calculant de combien de degrés je dois corriger pour chaque rectangle...

Dernière modification par Mazalia (Aujourd'hui 10:21)

Hors ligne

 

#14 Aujourd'hui 10:51

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 401

Re: QGIS: Orientation atlas

Je ne suis pas sûr de bien comprendre comment sont vos donnés et vos linéaires/rectangles, pour votre problématique d'angles.
Vous avez une capture d'écran pour mieux cerner le problème ?

Concernant le calcul de l'angle, vous pouvez le faire directement dans QGIS avec la calculatrice de champ, pas besoin d'utiliser Excel.
Si c'est seulement un décalage de 90°, vous pouvez même laisser l'angle tel quel dans l'attribut et faire votre calcul angle calculé-90 dans l'orientation de la carte dans votre mise en page (propriétés de l'élément carte).

Hors ligne

 

#15 Aujourd'hui 11:14

Mazalia
Participant occasionnel
Date d'inscription: 19 Feb 2021
Messages: 16

Re: QGIS: Orientation atlas

p.jeremie a écrit:

Je ne suis pas sûr de bien comprendre comment sont vos donnés et vos linéaires/rectangles, pour votre problématique d'angles.
Vous avez une capture d'écran pour mieux cerner le problème ?

Concernant le calcul de l'angle, vous pouvez le faire directement dans QGIS avec la calculatrice de champ, pas besoin d'utiliser Excel.
Si c'est seulement un décalage de 90°, vous pouvez même laisser l'angle tel quel dans l'attribut et faire votre calcul angle calculé-90 dans l'orientation de la carte dans votre mise en page (propriétés de l'élément carte).


Oui au final j'ai calculé directement par la table attributaire.
Voici une illustration du problème persistant, chaque image à le nord au Nord.

Rectangle 1
https://zupimages.net/up/24/30/lmak.jpg

Ici l'exemple d'un rectangle avec une orientation de 31°, typiquement ici, il faudrait que l'angle final prenne en compte une correction afin que le côté droit du rectangle soit dirigé vers le nord sur le rendu.

Rectangle 3
https://zupimages.net/up/24/30/w16j.jpg

Ici l'angle est de 0° selon le calculateur, donc la correction de - 90° permet d'obtenir l'orientation voulue.


Rectangle 5
https://zupimages.net/up/24/30/viy0.jpg

Ici l'angle est de 90°, sur le rendu je n'ai aucun modification a apporter car l'orientation est celle que je veux obtenir.


J'espère avoir donné toutes les informations nécessaires, j'avoue que plus je me penche sur le problème, plus je me dis que seul un calcul entité par entité de la correction nécessaire peut résoudre le problème.

Hors ligne

 

#16 Aujourd'hui 12:45

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 401

Re: QGIS: Orientation atlas

Sur la mise en page (que je suppose donc être en paysage étant donné que votre rectangle 5 vous convient comme ça), vous devez indiquer la rotation de la carte à : 90- angle calculé
Ainsi vous aurez une rotation de 59 degrés pour la cas 1,90 degrés pour le cas 3 et 0 degrés pour le cas 5.

Testez, je pense que ça devrait répondre à votre problématique.

Hors ligne

 

#17 Aujourd'hui 14:03

Mazalia
Participant occasionnel
Date d'inscription: 19 Feb 2021
Messages: 16

Re: QGIS: Orientation atlas

p.jeremie a écrit:

Sur la mise en page (que je suppose donc être en paysage étant donné que votre rectangle 5 vous convient comme ça), vous devez indiquer la rotation de la carte à : 90- angle calculé
Ainsi vous aurez une rotation de 59 degrés pour la cas 1,90 degrés pour le cas 3 et 0 degrés pour le cas 5.

Testez, je pense que ça devrait répondre à votre problématique.


Merci ! Je viens de tester et cela fonctionne parfaitement.
Petite précision, le seul couac restant était sur la première entité, l'angle de 59° donnait un rendu "inversé". J'ai donc rajouté 180° et cet entité apparaît également correctement.

Merci beaucoup à ceux qui m'ont répondu sur le sujet, comme d'habitude votre aide a été précieuse sur ce coup wink

Hors ligne

 

#18 Aujourd'hui 19:13

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

Re: QGIS: Orientation atlas

Bonjour,

De mon côté, j'utilise souvent les atlas dans le cadre de mon boulot.
Dans la mise en page, je crée une vue qui porte aussi loin que cela peut rentre en fonction d'une échelle donnée. Il faut donc jouer sur la largeur dans position et taille de l'objet.
Ensuite dans la boîte à outils de traitement, choisir cartographie/imprimer l'étendue de la mise en page dans la couche.
Cela crée un fichier de l'emprise souhaitée avec comme valeurs attributaires la largeur, la hauteur, l'échelle et la rotation de l'emprise qui est la couche de couverture de l'atlas.
Ensuite lors de l'atlas, choisir comme rotation la rotation de l'emprise.

Hors ligne

 

Pied de page des forums

Powered by FluxBB