Alguns documentos oficiais incluem as coordenadas dos pontos que definem os limites da área sendo demarcada. É o caso de muitos decretos de criação de áreas de proteção ambiental. Nesta página, explicarei como extraí os pontos do decreto de criação da Unidade de Conservação Refúgio de Vida Silvestre Pedra da Andorinha, produzi um mapa no formato shapefile e adicionei os dados ao OpenStreetMap.
O primeiro passo foi extrair os pontos do decreto para um arquivo de
texto simples. Para isso, usei pdftotext
para converter o
PDF em texto simples e o editor Neovim para rapidamente converter o
texto em TSV (valores separados por caractere de tabulação):
ponto lat lon
PT01 9551732.23 388815.68
PT02 9551052.78 390156.19
PT03 9547911.34 387749.10
PT04 9547732.38 387370.57
PT05 9548043.16 386975.17
PT06 9548244.76 386713.29
PT07 9548837.69 386640.01
PT01 9551732.23 388815.68
Os limites da Pedra da Andorinha são definidos por apenas
sete pontos e, portanto, o arquivo TSV poderia ser facilmente produzido
sem uso do pdftotext
ou do Neovim. Mas, em alguns casos, os limites
da área são definidos por milhares de pontos, tornando imprescindível o
uso de expressões regulares para limpar o texto.
As coordenadas no decreto estão no sistema SIRGAS 2000 e o Estado do Ceará está completamente inserido no fuso 24. Assim, com o banco de dados pronto, o próximo passo foi a conversão das coordenadas em um mapa. Para isso, utilizei o seguinte código R para a criação do arquivo SHP (agradeço a Matheus Gomes, Narcélio de Sá e Raquel Dezidério Souto pela ajuda para encontrar a string de projeção correta):
library("sp")
library("sf")
p <- read.delim("andorinha.tsv")
p <- Polygon(p[, c("lon", "lat")], hole = FALSE)
x <- Polygons(list(p), 1)
sp <- SpatialPolygons(list(x))
proj4string(sp) <- "+proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0"
st_write(st_as_sf(sp), "andorinha_utm.shp")
Por fim, bastou abrir o arquivo SHP no JOSM, baixar os dados da área do mapa ou uma imagem de satélite para conferir se o polígono estava no lugar certo e com as dimensões corretas, adicionar as etiquetas necessárias (veja exemplos já existentes no OpenStreetMap) e subir os dados para o servidor do OpenStreetMap. Também pode ser usado o comando do Neste caso, o resultado foi este: Pedra da Andorinha.
No comments:
Post a Comment