Je travaille sur un projet de traçage de lignes dans un réseau géométrique. J'ai dû inverser la direction de la ligne (débit) sur de nombreuses lignes pour que les traces fonctionnent. Maintenant, je suis à un point où je dois mettre à jour le jeu de données maître, et donc faire ces mêmes inversions de ligne dans la base de données.
Ma pensée est que je lancerais un petit script arcpy pour vérifier le to / from XY pour chaque ligne par rapport au to / from des lignes correspondantes dans le jeu de données maître - tous ceux qui ont le to XY correspondant au maître de XY (et vice -versa) serait enregistré pour retournement.
Bien que je pense que ce script ne devrait pas être trop difficile à écrire, je me demande maintenant s'il existe déjà un outil qui identifiera les lignes inversées pour moi? Je n'ai pas encore pu en trouver dans ArcToolbox, mais je cherche peut-être la mauvaise chose.
Notez qu'il y a d'autres changements de géométrie dans mon jeu de données que je ne veux pas trouver, juste des lignes correspondantes identiques (appariées sur un ID) où la seule différence est la direction. Lignes où XY est différent que je veux ignorer.
Par exemple, les lignes suivantes indiquant la direction de la ligne
Les lignes dans la zone bleue dont je veux prendre note, la seule différence est la direction de la ligne. La ligne dans la zone rouge que je ne veux pas enregistrer car la ligne a effectivement bougé.
Existe-t-il un outil dans ArcGIS Desktop (10.5) qui peut identifier les lignes qui ont été inversées, mais ignorer les autres changements de géométrie? Si oui, lequel?
Je viens de trouver l'outil "Détecter les changements de fonctionnalités", que je teste actuellement (il est très très lent). Je ne sais pas si cela va trouver des lignes inversées, ou tout. Bien sûr, j'ai peut-être mal réglé les paramètres.
L'outil Détecter les changements de fonction a terminé le traitement - il a fallu près de 20 minutes pour s'exécuter - mais n'a trouvé que 9 fonctions dont la direction de la ligne avait changé. J'attends au moins 10000 fonctionnalités inversées.
la source
Réponses:
J'utiliserais un dictionnaire pour cela. Je suis surpris de leur rapidité.
la source