Converter GeoJSON para Shapefile
Este conversor transforma um arquivo GeoJSON em um conjunto shapefile com arquivos .prj e .cpg para ArcGIS Pro, QGIS ou AutoCAD Map 3D, opcionalmente reprojetado para um sistema como uma zona UTM. A conversão acontece no seu navegador e o arquivo não é enviado. Pontos, linhas e polígonos misturados viram shapefiles separados, nomes de propriedades são cortados em 10 caracteres, e geometrias GeometryCollection ou nulas ficam de fora.
Um arquivo não foi convertido corretamente? Escreva para [email protected], de preferência com um pequeno arquivo de exemplo, e o problema será corrigido.
O essencial
- Entrada: GeoJSON (.geojson). Saída: Shapefile (.shp).
- Seus arquivos não são enviados: o trabalho é feito no navegador, no seu próprio dispositivo.
- Tamanho: sem limite fixo; arquivos muito grandes são limitados pela memória do dispositivo.
- Precisa de um navegador atual (Chrome, Edge, Firefox ou Safari) no computador, tablet ou celular; nada para instalar.
- Grátis e sem cadastro.
De GeoJSON para Shapefile: por que converter?
GeoJSON sai de mapas web, APIs, do geojson.io e de código JavaScript, mas fluxos de trabalho de SIG de desktop, órgãos públicos e muitos clientes ainda pedem um shapefile da Esri. Este conversor gera um conjunto shapefile que você pode adicionar na hora ao ArcGIS Pro, ao QGIS ou ao AutoCAD Map 3D. Ele cuida das partes do formato que costumam dar problema: um tipo de geometria por arquivo, nomes de campos com no máximo 10 caracteres, o arquivo .prj com o sistema de coordenadas e a codificação de texto da tabela de atributos. Você pode reprojetar no caminho, por exemplo para uma zona UTM ou um sistema State Plane, para que o shapefile já fique pronto para medições em metros ou pés. Tudo acontece no seu navegador com o GDAL.
Como converter GeoJSON para Shapefile
- Solte seu arquivo .geojson ou .json na caixa ou clique para escolhê-lo.
- Se quiser, informe um sistema de coordenadas de saída, como EPSG:31983 para SIRGAS 2000 / UTM zona 23S.
- Clique em “Converter para Shapefile” e baixe um .zip com as partes do shapefile.
O que muda na conversão
Nomes de propriedades longos são encurtados
Nomes de propriedades em GeoJSON podem ser tão longos quanto você quiser, mas a tabela .dbf do shapefile aceita só 10 caracteres. O GDAL corta nomes mais longos e os mantém únicos, então description_long vira descriptio, population_2020 vira population e population_2021 vira populati_1. Renomeie as propriedades antes de converter se os nomes das colunas forem importantes para quem vai receber o arquivo.
Geometrias misturadas viram vários shapefiles
Um único arquivo GeoJSON pode conter pontos, linhas e polígonos juntos; um shapefile, não. Você recebe um shapefile por tipo, como parks_points.shp, parks_lines.shp e parks_polygons.shp, em um único .zip. Feições com várias partes vão junto com o seu tipo. Uma feição cuja geometria é uma GeometryCollection ou nula não cabe em nenhum desses arquivos e fica de fora; a mensagem após a conversão diz quantas foram.
Valores aninhados, true/false e datas
A tabela .dbf guarda só valores simples, como texto, números e datas. Objetos aninhados são gravados como texto JSON, e listas simples como texto do tipo (2:a,b), ou seja, dois valores. True e false viram 1 e 0, e datas simples como 2024-05-01 viram campos de data de verdade. Uma data com horário é mantida como texto, porque um campo de data do .dbf não comporta a hora. Textos com mais de 254 caracteres são cortados.
O sistema de coordenadas e o arquivo .prj
O GeoJSON padrão usa longitude e latitude WGS84, então por padrão o shapefile é gravado em WGS84 (EPSG:4326) com um .prj correspondente. Informe um sistema projetado para ter coordenadas em metros ou pés. Arquivos GeoJSON mais antigos que declaram outro sistema em um membro “crs” são lidos nesse sistema, e o shapefile o mantém, a menos que você escolha outro.
Caracteres especiais
O texto dos atributos é gravado em UTF-8, e um arquivo .cpg informa isso, o que tanto o ArcGIS quanto o QGIS leem. Nomes com caracteres como ü, é ou ñ aparecem corretamente. Programas antigos que ignoram o arquivo .cpg podem mostrá-los de forma errada.
Sobre os formatos
GeoJSON
GeoJSON é um formato de texto JSON para feições geográficas, padronizado como RFC 7946 em 2016. É o formato nativo de mapas web como Leaflet, MapLibre e Mapbox, e de muitas APIs.
- As coordenadas são longitude e latitude WGS84 (nessa ordem).
- Pontos, linhas e polígonos podem ser misturados em um mesmo arquivo.
- As propriedades podem ser qualquer valor JSON, sem limite de tamanho nos nomes de campo.
Shapefile
O shapefile da Esri é o formato vetorial de SIG mais usado. Um “shapefile” é, na verdade, um conjunto de arquivos com o mesmo nome: o .shp guarda a geometria, o .shx um índice, o .dbf a tabela de atributos, o .prj opcional o sistema de coordenadas e o .cpg a codificação do texto.
- Precisa de pelo menos .shp, .shx e .dbf. Selecione-os juntos ou em um único .zip.
- Os nomes de campo são limitados a 10 caracteres e os valores de texto a 254.
- Cada shapefile contém um só tipo de geometria: pontos, linhas ou polígonos.
- Sem um arquivo .prj, o sistema de coordenadas é desconhecido.
Perguntas frequentes
Quais arquivos vêm no zip?
Para cada tipo de geometria dos seus dados, você recebe arquivos .shp, .shx, .dbf, .prj e .cpg com o mesmo nome. Mantenha-os juntos em uma pasta; os programas de SIG precisam pelo menos dos três primeiros.
Por que recebi três shapefiles em vez de um?
Seu GeoJSON mistura pontos, linhas e polígonos. Um shapefile só comporta um deles, então o conversor gera um shapefile por tipo em vez de descartar dados.
Posso manter meus nomes de campos longos?
Não em um shapefile; o limite de 10 caracteres faz parte do formato. O GeoPackage não tem esse limite e abre no QGIS e no ArcGIS Pro, então vale a pena perguntar se quem vai receber aceita esse formato.
Ele aceita arquivos .json?
Sim, desde que o conteúdo seja GeoJSON, como uma FeatureCollection, uma única Feature ou uma geometria simples.
Meu GeoJSON é enviado?
Não. O shapefile é gerado pelo seu navegador no seu próprio computador. Nenhum dado sai dele.