Ho uno Shapefile (costituito dalle principali strade europee) con circa 250.000 segmenti che devo semplificare per il pgrouting. Ma non riesco a trovare un modo per farlo correttamente.
Ecco come appare:
e questo è come dovrebbe essere:
Devo in qualche modo rimuovere ogni Punto delle Linee che è collegato a meno di 3 Linee (non essendo un'intersezione) preservando le connessioni topologiche tra i punti rimanenti. Se qualcuno ha un'idea, sarebbe molto apprezzato!
I migliori saluti
EDIT: ho cercato di implementare l'idea di @dkastl e sono riuscito a ottenere dalla mia rete solo i nodi inutili (nodi con solo 2 stringhe di linea adiacenti) con il codice seguente (generazione della rete tratta dal blog di underdark http://underdark.wordpress.com / 2011/02/07 / a-beginners-guide-to-pgrouting / ):
SELECT * FROM
(SELECT tmp.id as gid, node.the_geom FROM
(SELECT id, count(*) FROM network
JOIN node
ON (start_id = id OR end_id = id) AND (end_id = id OR start_id = id)
GROUP BY id ORDER BY id) as tmp
JOIN node ON (tmp.id = node.id)
WHERE tmp.count = 2) as unn_node;
Quindi, tutto quello che devo fare ora è la fusione delle linee. Tuttavia, non ho idea di come. Immagino che debba essere un ciclo che per ogni riga del risultato della query precedente ottiene le linee adiacenti e le unisce. Quindi ricostruirà completamente la rete e ripeterà il processo fino a quando la query sopra non restituisce un risultato vuoto.