Limites geográficos de todos os 5566 municípios brasileiros no Google Earth

[Obsoleto. A atualização está em no artigo Como gerei mapas dos 5570 municípios brasileiros no Google Earth]
Existem ilustrações vetoriais de limites geográficos político-administrativos e mapas de todos os 5566 municípios brasileiros na Wikipedia [em 2017, já são 5570], graças ao trabalho de um usuário que converteu ilustrações do IBGE em formato CorelDraw (CDR) para Scalable Vector Graphics (SVG).

Mas eu queria também arquivos vetoriais no formato KML do Google Earth (GE), para evitar ter que gerar e posicionar manualmente overlays de imagens PNG convertidos dos SVG, que ficam com resolução ruim vistos de perto. Pesquisando no site do IBGE, descobri arquivos de “malha digital” em formato ESRI shapefile, que é um padrão de facto de dados geográficos. Cavando mais na internet, descobri programas para  converter dados geográficos com suporte para formato KML do GE. Então, gerei um KML com os limites geográficos de 5566 (já são 5570, mas não há ainda o mapa dos novos) municípios brasileiros com dados de 2007 do IBGE. O arquivo ficou com 10.8 MB, mas, apesar de grande, carrega relativamente rápido no Google Earth.

[Atualização: Google Earth Professional, agora distribuído gratuitamente, abre diretamente shapefiles. É para Windows, mas roda bem no GNU/Linux sobre a camada de compatibilidade Wine. Ele importa os SHP, mas o nome dos municípios não fica no lugar certo do arquivo. Ainda é necessário colocar o nome pela procura-e-troca no Notepad++, conforme descrito abaixo].

Para obter o KML de um único município, procurei-o pela caixa de procura dos “Lugares” do GE, copiei e colei na própria janela de placemarks do Google Earth. Com a receita abaixo e com outros conjuntos de dados do IBGE, é possível se gerar o KML por região, por estado, por mesorregião e por microrregião. Os dados de 2005 têm melhor resolução, de 50 metros. Os outros, resolução de 250 metros. As linhas são simplificadas, pois os arquivos ficariam gigantescos se a resolução fosse maior.

Making of

Arquivo original em formato ESRI shapefile convertido para KML pelo Linux, pacote gdal-bin, programa ogr2ogr. Linha de comando:

export OGR_FORCE_ASCII=NO
ogr2ogr -f "KML" -t_srs EPSG:4326 municipios.kml 55mu2500gsr.shp

Para os dados de 2005, o comando é este:

ogr2ogr -f "KML" -s_srs EPSG:4326  -t_srs EPSG:4326 brasil.kml 55mu500gc.sh

Os placemarks são gerados sem nome pelo ogr2ogr.

Colocando nomes nos placemarks

Para colocar os nomes, usei a procura e troca do Notepad++ através de expressões regulares (regexp). Usei o recurso de regexp em que a gente agrupa um padrão de busca entre parêntesis e recoloca este padrão no texto substituído, com \1, \2 etc. Assim, peguei cada nome dentro do campo <SimpleData name="NOME">Aceguá</SimpleData> e inseri o campo <name>Aceguá</name> dentro de cada placemark.

Para os dados de 2005 e 2007, procurei por:

<Placemark>(\n.*?\n.*?\n.*?\n.*?.*?NOME">)(.*)</SimpleData>

Os dados de 2010 precisam desta regexp:

<Placemark>(\n.*?\n.*?\n.*?\n.*?\n.*?\n.*?.*?MUNIC">)(.*)</SimpleData>

E os dados de 2013 precisam desta regexp:

<Placemark>(.*\n?.*\n?.*?\n.*\n?.*\n?.*MUNICIP">)(.*)</SimpleData>

Troquei por:

<Placemark>\n\t<name>\2</name>\1\2</SimpleData>

Repare que o comando \2 é uma espécie de variável que insere o nome do município guardado pelo segundo grupo de parêntesis (.*). O comando \1 simplesmente repete o padrão encontrado no primeiro grupo de parêntesis, o comando \2, repete o segundo grupo de “(…)”, etc.

Mas o arquivo gerado pelo ogr2ogr tem acentuação em formato ANSI ou ISO-8859-1 (por isso a configuração OGR_FORCE_ASCII=NO, para conservar a codificação dos acentos). No Notepad++, precisei converter para ANSI e — sem salvar o arquivo — recarregá-lo e convertê-lo para UTF-8, que é a codificação do KML (padrão XML). É um comportamento estranho, converter e recarregar sem salvar, talvez porque o Notepad++ esteja rodando em Wine. Tenho que testar a conversão no Windows.

Download

Aqui está o KMZ com todos os perímetros municipais brasileiros em 2007 em resolução de 250 metros. Arquivo com 10.8 MB. Também tem os perímetros municipais brasileiros em 2005, com melhor resolução, de 50 metros. Arquivo com 15 MB.

Preparando uma tabela Google Fusion

Para preparar uma tabela para o Google Fusion, preciso apenas do nome da cidade e do polígono relacionado a ela, separados por tabulação, num arquivo tipo TSV (valores separados por tabulação).

A expressão regular para os dados de 2013, então, é:

<Placemark>(.*\n?.*\n?.*\n?.*?\n.*\n?.*\n?.*?MUNICIP">)(.*)</SimpleData>.*?\n.*?\n

Que substituo por \2\t (o que foi encontrado mais uma tabulação). Depois limpo as marcações que sobraram, como:

\n.*?</Placemark>

E, à mão, limpo o início e fim do arquivo KML.

[2023-04-25 Nota do editor] Atualização deste post:

Referências

José Antonio Meira da Rocha

Jornalista, professor das áreas de Editoração e de Mídias Digitais na Universidade Federal de Santa Maria, campus cidade de Frederico Westphalen, Rio Grande do Sul, Brasil. Doutor em Design pelo Programa de Pós-Graduação em Design (PGDesign)/Universidade Federal do Rio Grande do Sul (UFRGS), Porto Alegre, Brasil, 2023. Mestre em Mídias pela UNISINOS, São Leopoldo, RS, Brasil, 2003. Especialista em Informática na Educação, Unisinos, 1976.

View Comments

  • Excelente trabalho. Parabéns. O que você disponibilizou aqui no seu site é extremamente útil e importante para a sociedade. Obrigado

  • Parabéns!
    Algumas vezes sou surpreendido quando vejo profissionais que realmente buscam soluções.

    É por isso que evoluimos do AT e do MSX e sabemos o que é tecnologia quantica, na informática vivemos o futuro, porém, conhecemos a base de tudo um lugar onde se voce quer algo diferente CRIE!

    PARABÉNS!

  • Olá, Fábio!
    Valeu o prestígio!
    O próprio artigo ensina como fazer as conversões. Mas há um link para o arquivo completo dos municípios. Você não precisa converter nada, é só baixara e abrir no Google Earth.

  • José Parabéns pelo trabalho, me ajudou bastante, pois trabalho em várias cidades na minha região, e esse detalhamento ajuda bastante, muito obrigado.
    Teria uma pergunta, existe algum software que ajude na analise de uma imagem do google earth, algo que posso indicar detalhes de declividade, medidas mais precisas ou existe isso no earth e eu não sei, poderia explicar ou mostrar algum tutorial, livro apostila alguma coisa assim , pois muitas vezes em areas de cana no google earth eu fico apenas com poucos detalhes.
    abraços e obrigado
    Jacques - Piracicaba-SP.

    • Olá, Jacques!
      Valeu o prestígio!
      Para declividades, trace uma linha ou um caminho e, com o botão da direita, abra o menu do objeto e escolha "Mostrar perfil de elevação".

  • José, parabéns pelo artigo. Você sabe como faria para gerar o kml no Windows? Tentei baixar o arquivo kml em "organização_territorial" ; "localidades"; "google_KML", mas era direcionado a um ftp do ibge com o o que acredito ser o código do kml. Copiei em um arquivo txt e renomeei como kml, mas ao tentar abrir no GE, aparece um erro de código.

    Você sabe onde poderia estar o erro? Precisava da divisão territorial de 2010 em um arquivo kml.

    Muito obrigado,

    Rafael

    • Olá, Rafeal!
      Deve ser erro de download. Aqui, baixaram 32.965.164 bytes e abriu legal. Mas é só arquivo de pontos (placemarks), não tem as divisas dos municípios.

  • Olá,
    Estou precisando do mapa do brasil em vetor com todas as mesorregiões e microrregiões. Procurei no Wikipédia, porem só encontro ele em partes (mesorregião de são Paulo, mesorregião de Acre etc), mas mesmo quando junto todas as partes ele não encaixa perfeitamente.
    Tem como me informar onde conseguir esse mapa?

    Valeu

  • Você tem o arquivo SVG em nível nacional com todas as divisões de estados e municipios?

Recent Posts

Sempre faça um fotão

Colheita de soja. Foto: Wenderson Araujo/Trilux Fotógrafos de mídias rurais já perderam a conta das…

1 year ago

A corrupção dos tolos

João Batista MezzomoAuditor fiscal O que está por trás de tudo o que está acontecendo…

4 years ago

Naomi who? Naomi Wu!

A.k.a. "SexyCyborg". A mulher do século 21. Naomi Wu testa seu iluminador de implantes na…

5 years ago

Raspagem de dados

A principal ferramenta do jornalista de dados é a planilha, tipo LibreOffice Calc, M.S. Excel…

5 years ago

Que estratégia político-terapêutica pára um governo deliroide?

Rita Almeida, 9 de março de 2019 Psicóloga Rita Almeida: não delirantes, mas deliroides. Não…

6 years ago

Sua tia não é fascista, ela está sendo manipulada

Rafael Azzi5 de outubro de 2018 Você se pergunta como um candidato com tão poucas…

6 years ago