>Ho un layer composto da linee che spesso si intersecano tra loro, io vorrei >che ad ogni intersezione le linee avessero un nodo. Con PostGIS sono >riuscito ad estrarre tutte le intersezioni ma non so poi come aggiungerle >alla linea nella giusta posizione, con GRASS invece ho provato con v.net ma
In Postgis il modo esiste. Feci anche io delle prove al riguardo con poligoni archi e nodi. Comunque per mettere a punto il tutto ci vuole del tempo, tanta pazienza e svariate prove. Per cui se hai fretta ti conviene passare da altro ambiente :) Comunque: Si tratta di effettuare una serie di stringhe sql basate su varie nidificazioni di subquery e appoggiare i risultati su delle tabelle temporanee pe rtiutilizzarli (poi alla fine cancelli e rimuovi le tabelle temporanee) A grandissime linee: selezioni le linee che si intersecano con un filtro usando ST_Intersects(a.geom,b.geom)=true Le tagli con ST_Multi(ST_Intersection(ST_Boundary(a.geom),b.geom)) as geom Le butti in una tabella con geometria MultiLine. Ci aggiungi un progressivo preso da una sequence per fare contento quell'impiastro di qgis. Per i nodi li inserisci in una tabella di punti in cui il primo e l'ultimo li identifichi trmaite una stringa wkt che crei al volo e usi per definire la geometria che popola la tabella dei punti. La stringa wkt la ricavi con un costrutto sql di questo tipo: ST_X(ST_PointN(b.geom,1)) || ' ' || ST_Y(ST_PointN(b.geom,1)) as coordinata_partenza ST_X(ST_PointN(b.geom,ST_NPoints(b.geom))) || ' ' || ST_Y(ST_PointN(b.geom,ST_NPoints(b.geom))) as coordinata_finale Ovviamente e' il festival delle query nidificate e con qualche tabella temporanea di appoggio su cui inserisci i dati per poi riprenderli con la successsiva query. Ciao, -- ----------------- Andrea Peri . . . . . . . . . qwerty àèìòù -----------------
_______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [email protected] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it.
