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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 10 August 2017 14:31

OSSENI
Juste Inscrit !
Date d'inscription: 23 Oct 2015
Messages: 1

Inverser ou definir la direction d'une ligne suivant M(calibration)

Bonjour ,

Actuellement je travaille sur les lignes du réseau SNCF. Ces lignes sont calibrées à l'aide des points kilométriques.
J'aimerais créer une zone tampon à gauche de mes lignes mais j'ai constaté que mes lignes ne sont pas numérisées dans la même direction.
A cet effet j'aimerais que  toutes mes  lignes soient numèrisées suivant la direction de la calibration.
Avec ArcGIS, lorsque j’édite ma couche je peux definir la direction suiivant M mais le seule problème est qu'elle marche après une seul sélection.
Je ne peux pas sélectionner plus d'une seule ligne et faire la modification alors que moi je possède des millions de lignes.

j'aimerais demander si quelqu'un a une solution à me proposer afin que je puisse définir la direction de mes lignes de manière groupé ou singulier avec un script ou tout autre méthodes.

Merci

Hors ligne

 

#2 Wed 30 August 2017 17:55

gwenmael
Juste Inscrit !
Lieu: Melun
Date d'inscription: 3 Aug 2006
Messages: 4

Re: Inverser ou definir la direction d'une ligne suivant M(calibration)

Bonjour,

Je travail également sur ce type de ligne pour le réseau routier départementale.
Lors de la dernière migration, l'an dernier, j'ai été confronté un problème similaire, je l'ai résolu en plusieurs étapes.

En prérequis il faut s'assurer que chaque arc soit éclaté (plus de multi-parties) et qu'il dispose d'un identifiant unique (de l'arc et de la partie).

1- Exporter en point tous les sommets de tes lignes. (outils FeatureVerticesToPoints_management)
2- Ensuite, pour chaque point, tu récupère dans un champ la valeur M (calibration).
        - soit tu ajoute un champ (réel double) à ta classe de point et tu la calcul via la calculatrice en Python !shape.extent.getM!
        - soit via la toolbox avec l'outil AddXY_management où il t'ajoutera les champs POINT_X, POINT_Y, {POINT_Z} et POINT_M.
3- Enfin, tu recrées des lignes à partir de ces point en utilisant l’outil PointsToLine_management. Dans le paramétrage de l’outil, tu utilise ton champ contenant la valeur M comme champs de tri et celui avec l'identifiant de la section comme champ de regroupement.
4- Si tu avais dût éclater les arc multi partie en entrée il ne te reste plus qua les regrouper par ton identifiant d'arc.

si tu as quelques connaissance en python le tous peut se faire en un seul script.

Espérant que cela puisse t'aider. Il y a peut-être des méthode plus rapide mais je n'avais pas le temps à l'époque de faire beaucoup de recherche ou d'expérimentation.

Gwenmmaël

Hors ligne

 

#3 Wed 30 August 2017 17:55

gwenmael
Juste Inscrit !
Lieu: Melun
Date d'inscription: 3 Aug 2006
Messages: 4

Re: Inverser ou definir la direction d'une ligne suivant M(calibration)

J'ai oublié de précisé dans ma réponse le travail à été effectué en ArcGis desktop 10.3.1, avec une licence Advanced.
je n'ai pas vérifié mais il me semble que tous les outils utilisés sont disponible des le niveau basic

Gwenmaël

Hors ligne

 

Pied de page des forums

Powered by FluxBB