Desenhe dois polígonos no mapa, ou carregue um ficheiro GeoJSON ou um Shapefile compactado em .zip, depois subtraia um polígono do outro e mantenha apenas a área que resta. Escolha uma cor para o resultado e guarde-o como um ficheiro GeoJSON — rápido, no seu navegador, sem precisar de nenhum programa extra. Abrir em ecrã inteiro ↗
O Que É uma Diferença de Polígonos, e Porque Precisa de Uma
Uma diferença de polígonos, também chamada de apagamento ou subtração espacial, pega em duas formas sobrepostas e devolve-lhe apenas a parte da primeira forma que não é coberta pela segunda. Esta é uma das tarefas mais comuns no trabalho de SIG: retirar uma zona protegida de um lote de terreno, remover uma zona de proteção sem construção de um local de projeto, ou encontrar a parte de uma zona de entrega que outra loja ainda não cobre.
Cores das Camadas e Estilo do Resultado
Duas definições de cor ajudam a distinguir as camadas no mapa:
- Cor da camada: cada camada de polígonos recebe a sua própria cor quando é adicionada. Pode mudar esta cor a qualquer momento a partir da linha da camada.
- Result Color: define a cor da nova camada de diferença antes de clicar em "Run Difference". Mude-a novamente depois, a partir da linha da camada, se quiser um visual diferente.
A nova camada de diferença é desenhada com um contorno mais forte e um preenchimento mais intenso do que as camadas de origem, para que o resultado se destaque sempre no mapa.
Perguntas Frequentes
Posso executar a ferramenta novamente sobre o meu próprio resultado?
Sim. Um resultado de diferença é apenas mais uma camada de polígonos, por isso pode escolhê-lo novamente como Input Layer ou Erase Layer para uma nova execução. Isto permite-lhe encadear vários cortes, um a seguir ao outro.
O que é que um Shapefile compactado precisa de ter lá dentro?
Um ficheiro .zip, com pelo menos as partes .shp, .dbf e .shx do Shapefile lá dentro. Se o zip tiver mais do que uma camada lá dentro, cada uma é carregada como a sua própria camada separada na ferramenta.
Os meus dados de mapa são enviados para um servidor?
Não. O desenho, a leitura de ficheiros e os cálculos da diferença acontecem todos no seu próprio navegador, usando a biblioteca Turf.js. Nada é enviado para um servidor nem guardado nele, por isso é seguro de usar com dados de localização privados ou sensíveis.
Posso mudar a cor de uma camada depois de a criar?
Sim. Cada linha na lista de camadas tem a sua própria caixa de cor. Clique nela e escolha uma nova cor — a mudança aparece no mapa imediatamente, e não afeta nenhuma outra camada.
O que significa "diferença de polígonos", em palavras simples?
Significa pegar numa forma e cortar qualquer parte dela que seja coberta por uma segunda forma. O que resta — a parte da primeira forma que a segunda forma não toca — torna-se o seu novo resultado.
Porque é que o meu ficheiro é rejeitado?
Isto acontece quando o ficheiro não tem nenhuma forma Polygon ou MultiPolygon — por exemplo, um ficheiro só com pontos ou só com linhas. Verifique se o seu ficheiro de origem tem mesmo formas de área fechadas, e não apenas pontos ou traçados.
A minha Input Layer ou Erase Layer podem ter mais do que um polígono?
Sim. Se a Input Layer tiver vários elementos de polígono, a ferramenta calcula a diferença para cada um separadamente, verificando-o em relação a todos os polígonos na Erase Layer, e coloca todos os resultados não vazios numa única camada de saída.
O que acontece se a minha Erase Layer cobrir completamente a minha Input Layer?
Nesse caso, não sobra nada para manter, e a ferramenta informa-o de que o resultado está vazio, em vez de criar uma nova camada sem nenhuma forma dentro dela.
Qual é a diferença entre "difference" e "erase" em SIG?
São a mesma operação com dois nomes comuns. Os programas de SIG de computador, como o ArcGIS, costumam chamar-lhe "Erase", enquanto bibliotecas espaciais como o Turf.js e o PostGIS lhe chamam "Difference". Esta ferramenta usa as duas palavras, para ser fácil de encontrar, seja qual for a forma como a procura.
Posso usar pontos ou linhas como entrada?
Não. Esta ferramenta só funciona com formas Polygon e MultiPolygon, uma vez que só uma forma fechada tem uma área interna que pode ser cortada. Se o seu ficheiro tiver pontos ou linhas misturados com polígonos, essas formas extra são deixadas de fora, e recebe uma mensagem sobre quantas foram deixadas de fora.
Passo a Passo
1Passo 1
Abrir a ferramenta
O mapa abre com uma vista do mundo, sem camadas ainda. A barra de ferramentas no topo tem Draw Polygon, Upload, Sample Polygons e um seletor de mapa base. A barra lateral tem a ferramenta de diferença, a lista de camadas, e o botão de exportação.
2Passo 2
Adicionar o seu primeiro polígono
Clique em "Draw Polygon" e clique no mapa para cada canto, ou carregue um ficheiro GeoJSON ou um Shapefile compactado. Isto torna-se a sua Input Layer — a área que quer manter.
3Passo 3
Adicionar um segundo polígono, sobreposto
Desenhe ou carregue uma segunda forma que se sobreponha à primeira. Isto torna-se a sua Erase Layer — a área que quer cortar. Ou clique em "Sample Polygons" para adicionar duas formas sobrepostas já prontas.
4Passo 4
Escolher a Input Layer
Abra a lista "Input Layer" na barra lateral e escolha a camada cuja área quer manter.
5Passo 5
Escolher a Erase Layer
Abra a lista "Erase Layer" e escolha a camada que quer subtrair da Input Layer.
6Passo 6
Escolher uma cor para o resultado
Clique na caixa de cor ao lado de "Result Color" e escolha uma cor para a nova camada de diferença.
7Passo 7
Clicar em Run Difference
A ferramenta corta a Erase Layer da Input Layer e adiciona uma nova camada apenas com a área que resta. O mapa ajusta o zoom para mostrar a nova forma.
8Passo 8
Verificar e gerir as suas camadas
Na lista de camadas, ligue ou desligue qualquer camada, mude a sua cor, aproxime o zoom até ela, ou elimine-a. As camadas de diferença são marcadas de forma diferente das camadas de polígonos de origem, para que saiba sempre qual é qual.
9Passo 9
Guardar os seus resultados
Clique no ícone de download numa linha de camada para guardar apenas essa camada, ou clique em "Download All Layers" para guardar todas as camadas — entradas, formas de apagamento e resultados — num único ficheiro GeoJSON.
Como a Diferença É Calculada
Escolha duas camadas: uma Input Layer (a forma que quer manter) e uma Erase Layer (a forma que quer subtrair). A ferramenta analisa todos os polígonos na Input Layer e corta qualquer parte que caia dentro da Erase Layer. O que resta torna-se uma camada totalmente nova, para que as suas duas camadas originais fiquem intactas e prontas a usar novamente.
Aqui Só Funciona com Polígonos
Esta ferramenta só aceita formas fechadas: Polygon e MultiPolygon. Pontos e linhas não têm uma área interna, por isso não é possível calcular uma diferença para eles. Se o seu ficheiro tiver outras formas misturadas com polígonos, a ferramenta mantém apenas os polígonos e informa-o de quantas outras formas não foram usadas.
Veja: a Ferramenta de Diferença de Polígonos em Menos de um Minuto
Prefere ver a ler? Este pequeno tutorial em vídeo mostra como adicionar dois polígonos e apagar um do outro para obter a diferença.
Casos de Uso Reais
🌿
Planeamento Ambiental e de Conservação
Os grupos de conservação subtraem uma zona húmida protegida ou o limite de uma reserva de um local de projeto proposto para mostrar aos planeadores exatamente que parte do local ainda está disponível para construção.
📡
Análise de Cobertura de Telecomunicações
Os engenheiros de rede apagam o círculo de cobertura de uma torre próxima da área de cobertura de uma nova torre, para ver o terreno extra, sem sobreposição, que a nova torre realmente acrescentaria.
🚚
Planeamento de Zonas de Retalho e Entrega
As cadeias de retalho apagam a zona de entrega de uma loja da zona de uma loja vizinha para definir uma área de serviço exclusiva, sem sobreposição entre os dois locais.
📐
Lotes de Terreno e Servidões
Topógrafos e empresas de registo de propriedade subtraem uma servidão de utilidade pública ou uma faixa de passagem de um lote de terreno completo para ver a verdadeira área construível que resta para um proprietário.
🚜
Gestão de Campos Agrícolas
As equipas de agricultura de precisão subtraem uma zona inundada, um canto rochoso, ou uma estrada de acesso do limite de um campo para calcular a verdadeira área plantável para o planeamento de sementeira e produção.
🏙️
Planeamento Urbano e Zonamento
Os planeadores urbanos removem um parque, uma zona de inundação, ou uma área de património protegida de um polígono de distrito para descobrir quanto do distrito está realmente disponível para novos desenvolvimentos.
Duas Formas de Adicionar os Seus Polígonos
Adicione os polígonos com que quer trabalhar usando um destes métodos, ou use os dois juntos na mesma sessão:
- Desenhar no mapa: Clique em "Draw Polygon", depois clique no mapa para adicionar cada canto. Termine a forma com um duplo clique, a tecla Enter, ou o botão "Finish". Desenhe pelo menos dois polígonos sobrepostos para que a diferença tenha algo para remover.
- Carregar um ficheiro: Clique em "Upload" ou arraste um ficheiro para o mapa — um ficheiro GeoJSON/.json, ou um Shapefile compactado (.zip com .shp, .dbf e .shx lá dentro). Cada ficheiro torna-se na sua própria camada.
Ainda não tem um ficheiro pronto? Clique em "Sample Polygons" para adicionar já duas formas de teste sobrepostas. Assim que tiver pelo menos duas camadas de polígonos, escolha uma como Input Layer, escolha outra como Erase Layer, escolha uma cor para o resultado, e clique em "Run Difference".
A Trabalhar com as Suas Camadas
Cada camada de polígonos e cada camada de diferença que criar aparece como uma linha na lista de camadas. A partir dessa linha, pode ligar ou desligar a camada, mudar a sua cor, ampliar o mapa até ela, guardá-la como GeoJSON, ou eliminá-la. Nenhuma destas ações altera qualquer outra camada. Um resultado de diferença pode até ser escolhido novamente como Input Layer ou Erase Layer para uma próxima execução, para que possa encadear vários cortes seguidos.
Guardar o Seu Resultado de Diferença
Duas formas de guardar o seu trabalho estão sempre disponíveis na barra lateral:
- Guardar uma camada: clique no ícone de download ao lado de qualquer linha de camada para guardar apenas essa camada como um ficheiro GeoJSON.
- Download All Layers: coloca todas as camadas do mapa — entradas, camadas de apagamento e resultados de diferença juntos — num único ficheiro GeoJSON, com cada elemento identificado com o nome da sua camada.
O GeoJSON abre sem problemas no Leaflet, Mapbox GL JS, QGIS e ArcGIS, e até aparece como um mapa interativo no GitHub.
Mais Ferramentas que Poderá Gostar
Blocos do mapa © colaboradores do OpenStreetMap, desenhados com Protomaps (hospedado por KONAKTIVE), com CARTO como reserva. Imagens de satélite: Esri. Cálculos geométricos: Turf.js. Leitura de Shapefile: shpjs. Desenho do mapa: Leaflet. Todos os cálculos rodam no seu navegador, e nada do que você digita é salvo em um servidor.