Atualmente, estou usando dados de construção do Ordnance Survey Vectormap District e notei que muitos polígonos de construção são divididos em 2 por causa da maneira como o sistema operacional divide o shapefile.
Isto é o que estou vendo no QGIS - destaquei alguns dos edifícios divididos no limite de ladrilhos:
Não consigo mesclar manualmente os prédios, pois há muitos deles que foram divididos nos limites (este é apenas um exemplo ampliado). Estou procurando uma maneira automatizada de resolver isso.
Infelizmente, cada lado dos prédios divididos tem uma identificação diferente, então não posso dissolvê-los facilmente.
Como você sugere que eu possa mesclar automaticamente os blocos de construção?
Editar
Agora estou usando o PostGIS para mesclar os polígonos divididos nos limites do bloco. Aqui está a instrução SQL que faz isso por mim - é muitas, muitas vezes mais rápida do que com QGIS:
DROP TABLE merged;
CREATE TABLE merged AS
SELECT
-- Merge polygons that are within 0.01 metres of each other
(ST_Dump(ST_Union(ST_Buffer(the_geom, 0.01)))).geom AS the_geom
FROM unmerged;
-- Update the geometry_columns table
SELECT Populate_Geometry_Columns();
Respostas:
Se você simplesmente deseja dissolver as arestas e está satisfeito com um grande recurso multipolígono de todos os edifícios, você pode simplesmente usar a ferramenta "Dissolver" do fTools ("Vetor / Geoprocessamento / Dissolver").
Se você deseja manter os atributos (no caso do vetor OS que seria apenas o ID, o que parece ser bastante arbitrário), é possível dividir a camada vetorial dissolvida e atribuir os atributos da camada não dissolvida original usando "Unir atributos Por localização":
Este é um subconjunto de dois shapefiles de edifícios do SO que foram mesclados em um único shapefile usando "Vetor / Gerenciamento de dados / Mesclar shapefiles em um". As cores são atribuídas aleatoriamente para mostrar os recursos individuais:
Este é o resultado da ferramenta "Dissolver": todos os recursos foram dissolvidos em um único recurso com o ID do primeiro objeto, a quebra nos três edifícios centrais desapareceu:
Depois de dividir o recurso usando "Vetor / Geometria / Multipart para partes únicas", os edifícios são recursos individuais novamente, mas todos têm o mesmo ID:
Executando "Ferramentas de gerenciamento de vetor / dados / Associar atributos por local", com a camada dividida como destino e a camada mesclada original como a camada vetorial Join, os edifícios recebem novamente seus IDs individuais:
fonte
v.dissolve
após atribuir a todos os recursos algum atributo fictício idêntico, apenas aqueles que compartilham um limite serão mesclados.