Postgis |unione di poligoni adiacenti

A partire da un layer multipolygon contenente edifici di una porzione di territorio (circa 1300 entità) avevo la necessità ci creare un nuovo layer (tabella) contenente i poligoni ottenuti dalla fusione di elementi adiacenti. La situazione di partenza è quella rappresentata in fig. 1.

buildingfig. 1

Utilizzando le funzioni di Postgis ho ottenuto il risultato mediante la seguente istruzione (viene creata una nuova tabella):

# CREATE TABLE nuova_tabella AS SELECT(ST_Dump(ST_Union(ST_Buffer(the_geom, 0.01)))).geom AS the_geom FROM tabella_origine;

Il risultato è quello di fig. 2

building_unionfig. 2

Se volessimo aggregare i poligoni anche in base al valore di un determinato attributo il comando diventa:

# CREATE TABLE nuova_tabella AS SELECT nome_campo, (ST_Dump(ST_Union(ST_Buffer(the_geom, 0.01)))).geom AS the_geom FROM tabella_origine GROUP BY nome_campo;

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...