-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Amb els últims canvis que he pujat, l'algoritme ja converteix el subgraph a capes espacials de nou i les retorna a QGIS. Deixo aquí escrit el procés:
- Obtinc les ids de nodes i de arcs del subgraph.
- Utilitzo les ids per filtrar la capa original de nodes i arcs amb els nodes i arcs del subgraph.
- Miro quins camps estan modificats. Per poder fer això, cal que cada vegada que s'actualitzi un atribut d'un node o un arc s'utilitzi la funció
update_changed_fieldper actualitzar el camp 'changed' que llavors el consulto per saber quins camps actualitzar. De moment només està implementada pels nodes, necessiteu modificar atributs dels arcs també? - Actualitzo els camps i copio el node o arc des de la capa original cap a la capa resultat.
És la manera més eficient que se m'ha ocorregut, l'alternativa seria crear un cap de text definint la geometria i carregar-lo com a atribut als nodes i arcs del graph (és el que fa geopandas, de fet), però fas que el graph ocupi molta més memòria i per tant sigui més lent treballar-hi.
Executar l'algoritme
A dins de la carpeta sandbox, trobareu un petit script que es diu run_fixTheNetwork.py que si l'obriu des de la consola de python del QGIS executar l'algoritme sense haver d'utilitzar l'interfície gràfica. Agilitza bastant el procés de prova i error. Caldria que carregueu el MDE que utilitzeu a dins de la carpeta datasets quan volguem comnçar a utilitzar-lo.
En parlem divendres.