Message posté par : Jérémie
----------------------------------------
-----------------
conejo écrit :
Il faudrait découper la ligne électrique par l'emprise de l'atlas, et calculer son
orientation et sa ré-orientation à l'horizontale comme expliqué ici :
https://georezo.net/forum/viewtopic.php?id=127282&hl=orientation+atlas
Ensuite par une jointure spatiale rapatrier cette ré-orientation sur les pylones.
Mais comment découper la ligne électrique par l'emprise de l'atlas?
En pj un exemple d'atlas
-----------------
Si votre couche de couverture est la parcelle et que vous voulez orienter l'atlas
selon le morceau de ligne qui traverse la parcelle, alors il faut calculer
l'orientation en fonction du point d'entrée et de sortie de la ligne dans la
parcelle.
Je propose cette expression :
-----------------
Code :
-- création de la variable geom qui sera utilisée juste après
with_variable('geom',
-- intersection entre la géométrie de la parcelle et la ligne électrique la plus proche
intersection(
$geometry,
-- overlay_nearest() récupère la valeur du champ id de la ligne la plus proche, ligne
étant le nom de la couche
-- get_feature() récupère l'entité ayant cette valeur de champ id
-- geometry() récupère la géométrie de cette entité
-- si vous avez déjà dans un champ des pylônes l'identifiant de la ligne électrique
correspondante il est possible de se passer du overlay_nearest()
geometry(get_feature('ligne','id',array_to_string(overlay_nearest('ligne',"id"))))
),
-- calcul de l'orientation en degrés selon le premier et le dernier point de la ligne
intersectant la parcelle (donc le point d'entrée et de sortie de la ligne dans la
parcelle)
round(degrees(azimuth(
-- utilisation des fonction start_point et end_point
start_point(@geom),
end_point(@geom)
)))
)
-----------------
Puis même chose dans le composeur d'impression (mise en page) il suffit d'utiliser
90 - la valeur de l'attribut orientation calculé.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=354439#p354439
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net