[QGIS-it-user] compilazione attributi in base a regole e direzione flussi

Buongiorno a tutti

avrei un quesito se qualcuno può aiutarmi, dovrei compilare in modo
automatico o quasi alcuni campi, di tratte sostiuite con nuove geometrie.

Ho una rete formata da due layer, uno di punti e uno di linee, ogni
geometria lineare all'estremità tocca una geometria puntuale.

Nei due layer esistono due campi STA (che vorrebe significare start
partenza) e END (fine) con codici numerici, questi codici servirebbero o
sarebbero serviti in passato a fare analisi di rete. Ovvero esite un campo
numerico che identifica la partenza e la fine e segue la direzione della
linea. Ovvero avremo un nodo di partenza che avrà un campo STA vuoto e un
campo END. La linea che parte da quel punto avra il campo STA che prende il
numero del campo END del nodo e avrà un campo END con nuovo numero, il nodo
successivo prenderà il campo END dalla linea e lo avrà come campo STA e
avanti così. In caso che più linee si vanno ad unire in un unico punto,
allora il campo END per tutte le linee sarà uguale e il campo STA del punto
di intersezione dovrà avere quel valore di END.

Nello scrrenshot ho etichettato i campi STA in nero e END in rosso .
<http://osgeo-org.1560.x6.nabble.com/file/n5295827/Appunti01.jpg&gt;
<http://osgeo-org.1560.x6.nabble.com/file/n5295827/Appunti02.jpg&gt;

Vorrei evitare di compilare tutto manualmente visto il numero degli elementi
da modificare e purtroppo di questo campo i committenti non vogliono
rinunciare.

Lo sò è un bel casino, se qualcuno sà come affrontare il problema, posso
allegare gli shape.

Grazie
Ugi

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/compilazione-attributi-in-base-a-regole-e-direzione-flussi-tp5295827.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

Ciao,
ammetto di non aver capito il problema: devi aggiornare campi già
esistenti o riempire i campi di tratte nuove con lo stesso criterio
adottato per tratte vecchie? La descrizione che hai fatto mi ha un po'
confuso, ma credo che si possa risolvere scorrendo i due layer e
andando ad annidare un po' di cicli if.
Per favore potresti allegare gli shape di partenza (anche in parte,
giusto per avere un'idea) e un esempio di shape di arrivo (dove fai
vedere quale sia il risultato che si vuole ottenere partendo dagli
shape di partenza)? Grazie.
Marco

Il 15 novembre 2016 12:34, ugi <info@elgeo.it> ha scritto:

Buongiorno a tutti

avrei un quesito se qualcuno può aiutarmi, dovrei compilare in modo
automatico o quasi alcuni campi, di tratte sostiuite con nuove geometrie.

Ho una rete formata da due layer, uno di punti e uno di linee, ogni
geometria lineare all'estremità tocca una geometria puntuale.

Nei due layer esistono due campi STA (che vorrebe significare start
partenza) e END (fine) con codici numerici, questi codici servirebbero o
sarebbero serviti in passato a fare analisi di rete. Ovvero esite un campo
numerico che identifica la partenza e la fine e segue la direzione della
linea. Ovvero avremo un nodo di partenza che avrà un campo STA vuoto e un
campo END. La linea che parte da quel punto avra il campo STA che prende il
numero del campo END del nodo e avrà un campo END con nuovo numero, il nodo
successivo prenderà il campo END dalla linea e lo avrà come campo STA e
avanti così. In caso che più linee si vanno ad unire in un unico punto,
allora il campo END per tutte le linee sarà uguale e il campo STA del punto
di intersezione dovrà avere quel valore di END.

Nello scrrenshot ho etichettato i campi STA in nero e END in rosso .
<http://osgeo-org.1560.x6.nabble.com/file/n5295827/Appunti01.jpg&gt;
<http://osgeo-org.1560.x6.nabble.com/file/n5295827/Appunti02.jpg&gt;

Vorrei evitare di compilare tutto manualmente visto il numero degli elementi
da modificare e purtroppo di questo campo i committenti non vogliono
rinunciare.

Lo sò è un bel casino, se qualcuno sà come affrontare il problema, posso
allegare gli shape.

Grazie
Ugi

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/compilazione-attributi-in-base-a-regole-e-direzione-flussi-tp5295827.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.
_______________________________________________
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-it-user

On 11/15/16, ugi <info@elgeo.it> wrote:

Buongiorno a tutti

buongiorno,

......
Nei due layer esistono due campi STA (che vorrebe significare start
partenza) e END (fine) con codici numerici, questi codici servirebbero o
sarebbero serviti in passato a fare analisi di rete.....

vuoi costruire una lista linkata di geometrie, ok?

.....
Vorrei evitare di compilare tutto manualmente visto il numero degli elementi
da modificare e purtroppo di questo campo i committenti non vogliono
rinunciare.

in modo automatico, cioè con strumenti nativi di QGIS non saprei (e
certo vale la pena di approfondire), ma con un piccolo script python
non dovrebbe essere difficile testare le estremità di inizio e di fine
della polyline con le altre e registrare le linee interessate;
forse dovrai avere cura di trattare il senso di percorrenza delle
linee e/o anche intersezioni a più di due linee;

Grazie
Ugi

ciao,
giuliano

Ciao,
devo riempire campi di tratte nuove con lo stesso criterio con cui sono
state riempiti campi delle tratte esistenti. Ti allego un pezzo di shape
dove si vedono i campi esitenti con che logica sono compilati, compreso dei
tratti nuovi da compilare. Premetto che ogni linea parte da un'elemento
punto e finisce ad un'altro elemento punto ed ha una direzione di percorso
che poi i campi compilati dovranno seguire. Quindi se n linee finiscono in
un elemento punto, le n linee avranno come campo END lo stesso codice
numerico e il punto che vanno a toccare prendera il valore come campo START.
Inoltre in questa logica il primo punto di partenza non avrà nessun valore
di START (campo vuoto) e solo un valore END che poi trasmettera alla linea
come lo prenderà come valore di START.
Grazie nel frattempo.
shape li metto in dropbox nel seguente link:
https://www.dropbox.com/s/rpf46hfm1db7qpa/test-qgis-userlist.zip?dl=0
grazie
ciao
Ugi

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/compilazione-attributi-in-base-a-regole-e-direzione-flussi-tp5295827p5296294.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

On 11/17/16, ugi <info@elgeo.it> wrote:

Ciao,

ciao Ugi,

devo riempire campi di tratte nuove con lo stesso criterio con cui sono
state riempiti campi delle tratte esistenti. Ti allego un pezzo di shape
dove ......

ho guardato quel file e queste sono alcune feature che ho selezionato
(ho tagliato la geometria); questo estratto
wkt_geom ID DATERH FIRERH LOGSTA LOGEND
---------------------------------------------------------------------------------------------
POINT 11990 2006-02-03 19 0042080526273700 0042080522044000
LINESTRING 10606 2006-08-03 19 0042080522044000 0042080522033000
LINESTRING 11085 2006-02-03 19 0042080526284100 0042080526273700
LINESTRING 11086 2006-02-03 19 0042080526273600 0042080526273700
sembra suggerire che il campo LOGSTA delle linee duplica il campo
LOGEND del punto e viceversa;

tutto sommato semplice se avessi tutti i punti popolati, invece ho
visto che hai dei punti con i due campi non popolati: come fai a
popolarli? con quale logica?
risolto questo credo tu sia vicino alla soluzione;

grazie
ciao
Ugi

ciao,
giuliano

Ciao Giuliano
il fatto è proprio che ho uno shape da agiornare che aveva già i campi
compilati e ora mi trovo ad aggiungere nuovi elementi sia lineari che
puntuali , di cui oltre a tanti altri attributi ci sono questi due logsta e
logend che devo compilare utilizzando la stessa logica, per questo motivo
alcuni campi erano vuoti.
Se facciamo l'esempio di una rete per l'illuminazione, la sequenza logica
sarebbe si parte da un punto (es:cassetta) che ha logsta vuoto (NULL) e
logend (100), prosegue una linea che avrà logsta (100) e logend (200), a cui
si attacca un punto (pozzetto) che avrà logsta (200) e logend (300), da cui
magari partiranno n linee che avranno tutte logsta (300) e n diversi logend,
le quali finiranno in n punti che prenderanno come logsta i vari logend
ricevuti dalle linee.
Ora però non riesco a trovare un metodo per popolare i campi vuoti degli
elementi nuovi creati.
ciao
Ugi

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/compilazione-attributi-in-base-a-regole-e-direzione-flussi-tp5295827p5296483.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

On 11/18/16, ugi <info@elgeo.it> wrote:

Ciao Giuliano

ciao Ugi,

il fatto è proprio che ho uno shape da agiornare che aveva già i campi
compilati e ora mi trovo ad aggiungere nuovi elementi sia lineari che
puntuali , .......
Ora però non riesco a trovare un metodo per popolare i campi vuoti degli
elementi nuovi creati.

scusa se ripeto, ma il problema delle linee è forse risolto, è quello
dei punti che richiede la definizione di una policy; non puoi chiedere
lumi a chi l'ha prodotto?
io proverò a guardare ancora se magari intuisco qualche logica
sottostante, ma, come puoi intuire, è un metodo abbastanza poco
scientifico :slight_smile: :slight_smile:

ciao
Ugi

ciao,
giuliano