#1 Thu 13 March 2025 20:08
- Jean-Marc68
- Participant occasionnel
- Lieu: Rimouski
- Date d'inscription: 24 Jan 2015
- Messages: 24
QGIS: Atlas lineaire
Bonjour,
Je cherche à faire un atlas qui suit un polygone linéaire (une route).
J'ai créé une couche qui contient des polygones (tous rectangulaires).
Pour permettre une rotation du contenu de la carte pour aligner le rectangle avec la feuille, dans la table attributaire je veux créer un champs qui contient un angle.
Mais je bute sur un problème.
Lorsque j'ouvre ma table attributaire en mode édition et que j'ouvre la calculatrice de champs, j'e crée un nouveau champs décimal et y mets l'expression de ma formule : 360 - degrees(azimuth(make_point(x_at(0), y_at(0)), make_point(x_at(1), y_at(1))))
La prévisualisation me donne la valeur que j'attend. J'en déduis que la formule n'est pas erronnée sinon j'aurais un message d'erreur en rouge.
J'ai décoché de ne mettre à jour que les champs sélectionnés (J'ai aussi essayé en sélectionnant tous les rectangles et laissant cette case cochée).
Losque j'applique, il me crée le champs mais toutes les valeurs sont "Null".
J'ai aussi essayé en créant le champs avant puis en faisant la mise à jour d'un champs existant, mais le résultat reste imperturbablement le même.
Qu'est-ce que je fais mal et comme dois-je faire pour atteindre mon but ?
Merci de z'avis z'avisés.
Dernière modification par Jean-Marc68 (Thu 13 March 2025 21:18)
Hors ligne
#2 Thu 13 March 2025 21:35
- arnaudp
- Participant occasionnel
- Date d'inscription: 20 Sep 2020
- Messages: 43
Re: QGIS: Atlas lineaire
Bonjour,
Dans la formule pour définir la rotation de la carte (Rotation de la carte > Epsilon > Editer), est-ce que ça ne fonctionne pas si vous saisissez le code suivant :
Code:
360 - degrees(azimuth(make_point(x_at(@atlas_geometry,0), y_at(@atlas_geometry,0)), make_point(x_at(@atlas_geometry,1), y_at(@atlas_geometry,1))))
Avec dans x_at faisant appel en premier argument à la la géométrie (@atlas_geometry) de l'emprise de votre atlas, et le second argument l'index du sommet.
Bonne fin de journée.
Hors ligne