Ho il seguente livello usando SRID 27700 in postgis:
È ogni regione amministrativa nel Regno Unito e (come puoi vedere dal raggruppamento dei colori), ognuno di essi ha un campo di testo che specifica la contea in cui si trovano.
Quello che mi piacerebbe fare è creare poligoni di contea più grandi da quelli più piccoli in una data contea, quindi EG nella foto soprattutto i poligoni color verde acqua formerebbero un grande poligono dal singolo anello esterno che contiene tutti i poligoni in quello il colore, come tutti i viola, i marroni, i rosa, i grigi, ecc. dovrebbe formare un poligono.
Ho già provato quanto segue:
insert into parishesmerged (geometry)
select astext(multi(ST_Union(the_geom))) as the_geom from parishes
group by county_name
Ma continua a generare geometrie rotte che poi ho grossi problemi a elaborare ulteriormente.
Sto cercando di creare una mappa a livello di contea più semplice con le principali aree di output in.
Nessuna soluzione deve trovarsi nemmeno in Postgis, ho installato lo stack OS4Geo completo, l'ultima versione di QGis e più utility di quante non riesca a scuotere.
Le uniche cose che non ho sono i ragazzi grandi come ArcGis (anche se potrei avere un vecchio Mapinfo in giro da qualche parte)
Per la cronaca, il set di dati che sto cercando di creare è di accompagnare un libro GIS che sto scrivendo rivolto ai programmatori .NET che desiderano scrivere applicazioni GIS usando .NET
Dopo aver provato i suggerimenti di seguito, quello che ha funzionato meglio è stata la soluzione "Paul Ramseys".
Ora ho un bel file di contee e distretti semplificato che è abbastanza semplice per il mio libro, ma abbastanza complesso da permettermi di dimostrare un interessante SQL geo-spaziale.
Anche se la soluzione di Paul alla fine è stata quella che ha funzionato per me, ho anche attinto alle altre risposte per cose come semplificare la mappa poligonale e ridurre ulteriormente la complessità.
Ciò che ho osservato osservando ciò, tuttavia, mentre ST_Collect è effettivamente più veloce di ST_Union, correre per correre è stato anche il principale responsabile delle geometrie rotte. La mia ipotesi è che l'aumento di velocità si ottiene a scapito di una minore precisione nella funzione principale.
astext(multi())
parte? Sto solo uscendo da quello che vedo negli altri esempi di dissolvenza di PostGIS.