Difference between revisions of "QGIS: Generalização Cartográfica"

From Geomaster, Lda
Jump to navigation Jump to search
 
(4 intermediate revisions by the same user not shown)
Line 19: Line 19:
 
Para facilitar indico os links na imagem em anexo.
 
Para facilitar indico os links na imagem em anexo.
  
[[File:Tela downloads ibge.jpg]]
+
[[File:Tela downloads ibge.jpg|thumb|Interface para download dos dados do IBGE]]
  
 
=== Dados para teste (GeoPackage) ===
 
=== Dados para teste (GeoPackage) ===
Line 29: Line 29:
 
=== Dados para teste (há erros nos dados Postgresql) ===
 
=== Dados para teste (há erros nos dados Postgresql) ===
  
Preparação do Postgresql: criar ''role'' e ''database''.
+
[[Importação dos dados do IBGE para Postgresql]] (Não recomendado, para já)
  
<syntaxhighlight lang="bash">
+
=== Exemplos de generalização ===
sudo su postgres
 
psql postgres -c "CREATE ROLE ibge WITH PASSWORD 'brasil' LOGIN SUPERUSER CREATEROLE CREATEDB;"
 
psql postgres -c "CREATE DATABASE ibge WITH OWNER ibge;"
 
psql ibge -c "CREATE EXTENSION postgis;"
 
psql ibge -c "CREATE SCHEMA mapcartcore;"
 
  
exit
+
Estes exemplos mostram a diferença entre a informação a 1:100.000 e 1:250.000.
</syntaxhighlight>
 
  
==== Remover a base de dados e o utilizador ====
+
Pequena povoação, denominada Cruzeiro, em -48.8156,-16.7656
  
Depois de todo o trabalho desenvolvido, pode-se desfazer o processo de criação da base de dados e do utilizador ''ibge'':
+
<gallery>
 
+
File:Exemplo 1 com 100k.png|Detalhe da rede rodoviária a 1:100k
<syntaxhighlight lang="bash">
+
File:Exemplo 1 com 250k.png|Rede rodoviária a 1:250k sobreposta
sudo su postgres
+
File:Exemplo 1 com OSM.png|Informação existente no [https://www.openstreetmap.org/#map=15/-16.7656/-48.8156 OpenStreetMap] para a mesma área
psql -c "DROP DATABASE ibge;"
+
</gallery>
psql -c "DROP ROLE ibge;"
 
exit
 
</syntaxhighlight>
 
 
 
Se permanecerem ligações à base de dados, consultar as ligação existentes e eventualmente forçar o fecho dessas ligações:
 
 
 
<syntaxhighlight lang="bash">
 
select * from pg_stat_activity where datname = 'ibge';
 
select pid, pg_terminate_backend(pid) from pg_stat_activity where datname = 'ibge' and pid <> pg_backend_pid();
 
</syntaxhighlight>
 
 
 
==== Base cartográfica 1:100.000 do estado de Goiás ====
 
 
 
A Base cartográfica 1:100.000 do estado de Goiás está disponível em  [ftp://geoftp.ibge.gov.br/cartas_e_mapas/bases_cartograficas_continuas/bc100/go_df/versao2016/postgis/bc100_go_df_2016_11_01.tar bc100_go_df_2016_11_01.tar]. Consulte o respetivo [ftp://geoftp.ibge.gov.br/cartas_e_mapas/bases_cartograficas_continuas/bc100/go_df/versao2016/postgis/leiame_bc100_go_df_2016_11_01.pdf Leia-me.pdf] para importar os dados par ao Postgresql.
 
 
 
<syntaxhighlight lang="bash">
 
cd /media/bonn/IBGE
 
PGPASSWORD="brasil" pg_restore --host localhost --port 5432 --username ibge --dbname ibge --no-owner --verbose "bc100_go_df_2016_11_01.tar" > bc100.log 2>&1
 
</syntaxhighlight>
 
 
 
==== Base cartográfica 1:250.000 do Brasil ====
 
 
 
A Base cartográfica 1:250.000 do Brasil está disponível em [ftp://geoftp.ibge.gov.br/cartas_e_mapas/bases_cartograficas_continuas/bc250/versao2017/postgis/bc250_2017-11-08.tar bc250_2017-11-08.tar]. Consulte o respetivo [ftp://geoftp.ibge.gov.br/cartas_e_mapas/bases_cartograficas_continuas/bc250/versao2017/postgis/leiame-bc250_2017-NOV.odt Leia-me.odt].
 
 
 
Carregar os dados no Postgresql:
 
 
 
<syntaxhighlight lang="bash">
 
cd /media/bonn/IBGE
 
PGPASSWORD="brasil" pg_restore --host localhost --port 5432 --username ibge --dbname ibge --no-owner --verbose "bc100_go_df_2016_11_01.tar"
 
</syntaxhighlight>
 
  
 
=== Algoritmos de generalização ===
 
=== Algoritmos de generalização ===

Latest revision as of 18:55, 17 March 2018

Contexto

Neste projeto pretende-se melhorar os algoritmos de generalização existentes. A ideia é identificar as soluções open source existentes e melhorá-las.

Generalização cartográfica

Entende-se por generalização cartográfica a transformação de uma ou mais camadas em camadas com menos detalhe, mais adequadas à visualização em escalas menores.

Estas transformações pegam em camadas com mais detalhe (por exemplo, à escala 1:1000) e geram uma adequada visualização a uma escala ainda mais pequena (por exemplo, 1:1582 ou 1:2550), como é ilustrada na imagem seguinte.

Gencartografica.png

Proposta do IBGE

Minha sugestão para os primeiros testes, seria fazermos a generalização da BC100 (só estado de Goiás) para BC250 (disponivel para todo o Brasil). Fica a critério de vocês se será uma folha ou todo o estado. O resultado BC100 => BC250 seria comparado com a base BC250.

Segue link para acesso aos datasets: http://www.downloads.ibge.gov.br/downloads_geociencias.htm

Para facilitar indico os links na imagem em anexo.

Interface para download dos dados do IBGE

Dados para teste (GeoPackage)

Usar os dados no formato GeoPackage:

  1. bc100_go_df_2016_11_01.gpkg
  2. bc250_2017-11-08.gpkg

Dados para teste (há erros nos dados Postgresql)

Importação dos dados do IBGE para Postgresql (Não recomendado, para já)

Exemplos de generalização

Estes exemplos mostram a diferença entre a informação a 1:100.000 e 1:250.000.

Pequena povoação, denominada Cruzeiro, em -48.8156,-16.7656

Algoritmos de generalização