Breve explanação sobre Banco de Dados espaciais, com uma breve introdução nas disciplinas de Geoprocessamento e Sistemas de Informação Geográfica. Algumas funções representadas do Banco de Dados PostGIS.
Sistema Gerenciador de Informações sobre Riscos Geológicos no Estado de São P...
Banco de Dados Espaciais com PostGIS
1. Banco de Dados Espaciais
Augusto Colombelli Alessio
augustocolombelli@gmail.com
CESUFOZ/2009
Semana Acadêmica Integrada CESUFOZ
Seminário de Informática
2. Tópicos
● Geoprocessamento;
● Sistema de Informação Geográfica (SIG);
– Breve explanação sobre os componentes de um
SIG;
– SIG's disponíveis.
3. Tópicos
● Banco de Dados Espaciais;
– Dados em um SIG;
– PostGIS;
● Conceitos;
● Objetos de GIS;
● Carregando Dados GIS;
● Funções de openGIS;
● Funções de medida;
● Funções de relacionamento da geometria;
4. Geoprocessamento
Coleta de informações sobre distribuição geográfica;
Utiliza técnicas matemáticas e computacionais para o
tratamento da informação geográfica;
Se “onde” é importante para seu negócio.
6. Sistema de Informação
Geográfica
● Geoprocessamento
– Sistema de Informação Geográfica;
● Hotelaria
– Sistema Hoteleiro;
● Administração
– Sistema Comercial.
7. Sistema de Informação
Geográfica
Sistemas que realizam o tratamento computacional de
dados geográficos.
“A principal diferença de um SIG para um sistema de
informação convencional é sua capacidade de armazenar
tanto os atributos descritivos como as geometrias dos
diferentes tipos de dados geográficos” (CÂMARA, 2005).
8. Sistema de Informação
Geográfica
Breve explanação sobre os componentes de um SIG
Arquitetura de um Sistema de Informação Geográfica
Fonte: (CÂMARA; QUEIROS, 2001)
10. Sistema de Informação
Geográfica
● Entrada de dados
Levantamento topográfico
Fonte: (Portal Geo)
Sensoriamento Remoto
Fonte: STEFFEN, A. C acesso em 09 de nov. de 2009
Aerofotogrametria
Fonte: (Portal Geo)
11. Sistema de Informação
Geográfica
● Consulta e Análise Espacial
gvSIG - 1.1.1
Mapa da Divisão Política Administrativa do Paraná do ano de 2007
Fonte: ITCG
12. Sistema de Informação
Geográfica
● Visualização e plotagem
● Gerência de dados espaciais;
– Banco de Dados Espaciais.
13. Sistema de Informação
Geográfica
● SIG's Disponíveis
gvSIG
http://www.gvsig.org
[...]es software libre, con licencia GNU/GPL,lo que permite su libre uso,
distribución, estudio y mejora.
[...]está desarrollado con Java y está disponible para plataformas Linux,
Windows y Mac OS X.
Quantum GIS
http://www.qgis.org/
[...]Quantum GIS (QGIS) is a user friendly Open Source Geographic
Information System (GIS) licensed under the GNU General Public License.
14. Banco de Dados Espaciais
Mapa da Divisão Política Administrativa do Paraná do ano de 2007
Fonte: ITCG
15. Banco de Dados Espaciais
● Dados em um SIG
– Matriciais;
“Nesta representação, o espaço é representado como uma
matriz P(m, n) composto de m colunas e n
linhas[...]”(CÂMARA, 2005).
Estrutura Matricial
Fonte: Câmara (2005)
16. Banco de Dados Espaciais
● Dados em um SIG
– Vetoriais
As estruturas vetoriais são responsáveis por representar as
coordenadas nas fronteiras de cada entidade geográfica
(CÂMARA, 2005).
Os dados são utilizados de 3 formas primitivas básicas.
- Pontos
- Linhas
- Polígonos
17. Banco de Dados Espaciais
● Dados em um SIG
– Vetoriais
Pontos
●
As entidades representadas por objetos do tipo ponto, são
aquelas que não possuem dimensões significativas, de
acordo com a escala em uso (FILHO, IOCHPE, 1996).
Tabela de atributos descritivos contendo dados espaciais
Fonte: (FILHO; IOCHPE, 1996)
18. Banco de Dados Espaciais
● Dados em um SIG
– Vetoriais
Linhas
●
“As entidades que são representadas por objetos do tipo linha são
aquelas que possuem uma distribuição espacial linear, como por
exemplo as ruas, rodovias, estradas de ferro, cabos telefônicos,
rios, etc” (FILHO; IOCHPE, 1996).
Entidades de uma rede elétrica
Fonte: (FILHO, IOCHPE, 1996)
19. Banco de Dados Espaciais
● Dados em um SIG
– Vetoriais
● Polígonos
Características bidimensionais;
“Os limites das entidades podem ser definidos originalmente pelos
próprios fenômenos (ex. limites de um lago, região costeira, etc)
podem ter sido criados pelo homem (ex.: limites de um município,
área de reserva florestal, etc)” (FILHO, IOCHPE, 1996).
Polígonos
20. Banco de Dados Espaciais
● PostGIS
– Necessita do PostgreSQL;
– Atualmente esta na versão 1.4.0;
– Desenvolvido pela Refractions Research;
– Utiliza a licença GNU (General Public License);
“PostGIS is an Open Source solution based on PostgreSQL which
can be used to handle giant amounts of geometric data fast and
efficiently”(CYBERTEC, Acesso em 09 de nov. de 2009).
21. Banco de Dados Espaciais
● PostGIS
– Trabalha com duas tabelas de meta-dados:
● SPATIAL_REF_SYS;
● GEOMETRY_COLUMN.
22. Banco de Dados Espaciais
● PostGIS
● SPATIAL_REF_SYS;
– SRID;
– AUTH_NAME;
– AUTH_SRID;
– SRTEXT;
– PROJ4TEXT;
25. Banco de Dados Espaciais
● PostGIS
● SPATIAL_REF_SYS;
Fonte: http://www.resurgentsoftware.com/GeoMag/utm_coordinates.htm
Acesso em: 06 de nov. de 2009
26. Banco de Dados Espaciais
● PostGIS
● GEOMETRY_COLUMN;
– F_TABLE_CATALOG, F_TABLE_SCHEMA,
F_TABLE_NAME;
– F_GEOMETRY_COLUMN
– COORD_DIMENSION
– SRID
– TYPE
29. Banco de Dados Espaciais
● PostGIS
– Criar Tabela;
– Adicionar meta-dados;
– Inserir valores.
30. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● area2d(geometry)
Área = base X altura
Área = 5 X 6
Área = 30
31. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● area2d(geometry)
Select id, area(the_geom) from contain_muni
32. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● area2d(geometry)
33. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● perimeter(geometry)
Perímetro = L + L + L +...
Perímetro = 6 + 5 + 6 + 5
Perímetro = 22
34. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● perimeter(geometry)
Select id, perimeter(the_geom) from contain_muni
35. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● length2d(geometry)
Select id, length2d(the_geom) from estradasss
36. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● length2d(geometry)
37. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● distance(geometry, geometry)
Distância entre 2 pontos
2 X1=144339.150079
Y1=7177177.86024
X2=259952.879294
Y2=7231032.11872
1 D = Raiz( (144339.150079 – 259952.879294)² + (7177177.86024 - 7231032.11872 ) ²)
D = Raiz ((-115613,729215)² + (-53854,25848)²)
D = Raiz(13366534382,999344516 + 2900281156,43065191)
D = Raiz(16266815539,429996426)
D = 127541,426758
38. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● distance(geometry, geometry)
2
1
Select distance(the_geom, (Select the_geom from palestra_pontos where gid = 1))
from palestra_pontos where gid = 2;
39. Banco de Dados Espaciais
– PostGIS
● Funções de medida
● distance(geometry, geometry)
Select gid, distance(the_geom, (Select the_geom from palestra_varios_pontos
where gid = 1)) from palestra_varios_pontos;
40. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Intersects(geometry,geometry)
5
Select gid, intersects((Select the_geom From municipio_inter Where id = 25), the_geom)
from linhainter
41. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Intersects(geometry,geometry)
5
Select gid, intersects((Select the_geom From municipio_inter Where id = 5), the_geom)
from linhaninter
42. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Intersects(geometry,geometry)
Select gid, intersects((Select the_geom From inter_estrada Where id = 0), the_geom)
from int_mun
43. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Intersects(geometry,geometry)
44. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Contains(geometry A, geometry B)
8
Select gid, contains((Select the_geom From poligon Where id = 8), the_geom) from p1
45. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Contains(geometry A, geometry B)
8
Select gid, contains((Select the_geom From poligon Where id = 8), the_geom) from p2
46. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Contains(geometry A, geometry B)
Select id, contains((Select the_geom from contain_muni where id = 5),
the_geom) from contain_pontos
47. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Contains(geometry A, geometry B)
48. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Crosses(geometry,geometry)
Select id, crosses((Select the_geom From cros_pol Where gid = 1), the_geom)
from cross_corta
49. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Crosses(geometry,geometry)
Select id, crosses((Select the_geom From cros_pol Where gid = 1), the_geom)
from cross_corta
50. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Crosses(geometry,geometry)
51. Banco de Dados Espaciais
– PostGIS
● Funções de relacionamento da geometria;
– Crosses(geometry,geometry)