23
BANCO DE DADOS GEOGRÁFICOS Como abstrair dados geográficos computacionalmente?

Postgis (short)

Embed Size (px)

Citation preview

Page 1: Postgis (short)

BANCO DE DADOS GEOGRÁFICOS

Como abstrair dados geográficos computacionalmente?

Page 2: Postgis (short)

O problema fundamental da Geoinformação é a produção de representações computacionais do espaço geográfico.

BANCO DE DADOS GEOGRÁFICOS

E ainda: Realidade -> Modelo de dados -> Estrutura de Dados -> Estrutura de Arquivos

Page 3: Postgis (short)

ESTRUTURA DE DADOS VETORIAIS

A combinação entre entidade dados espacial com o seu atributo dado não espacial.

Page 4: Postgis (short)

ESTRUTURA DE DADOS VETORIAIS

Page 5: Postgis (short)

PostGIS

• Adiciona suporte espacial ao banco PostgreSQL;

• Segue os padrões de interoperabilidade da OGC – Open GeoSpatial.

● Assim o PostGis dá suporte a todos os objetos e funções previstas pela especifi cação SFS “Simple Features for SQL” da OGC.

Page 6: Postgis (short)

Que tipos de objetos geométricos é possível armazenar no PostGIS?

PostGIS

Page 7: Postgis (short)

Atualmente há dois tipos de dados macro suportados: padrão OGC geometry que utiliza um sistema de coordenadas planas. E o geography, utilizado para distâncias realmente grandes em relação a todo o planeta Terra, e não existe referência ao Sistema de Referência utilizado.

PostGIS

Page 8: Postgis (short)

Para medidas geográficas da Terra, o sistema de referência mais comum é o Latitude e Longitude.

Várias elpsóides de refrência podem ser usadas, a depender da região do planeta: América do Sul 1969, Clarke 1866, Internacional 1924, etc. Além disso, depois de aproximar determinada superfície para uma elipsóide existe o processo de planificação da Terra como um todo. Para isso pode ser usado uma projeção Plana, Cilíndrica ou Cônica.

No caso de localização de objetos na susperfície da Terra, o sistema tem um complicador por causa da esfericidade do planeta.

(Sistemas de Referência)

Page 9: Postgis (short)

(Sistemas de Referência)

Page 10: Postgis (short)

PostGIS

CREATE TABLE table_name (columns and values);

SELECT AddGeometryColumn(<schema_name>,<table_name>,<column_name>,<srid>,<type>,<dimension>);

3 restrições: dimension, geotype e srid

Page 11: Postgis (short)

● Mas qual a vantagem disso tudo?

PostGISPostGISPostGIS

Page 12: Postgis (short)

● Mas qual a vantagem disso tudo? Disjoint: analisa se duas geometrias possuem algum ponto em comum e

retorna o valor verdadeiro (t, true) se nenhum ponto for identificado;

Intersects: analisa se duas geometrias possuem alguma interseção e retorna verdadeiro (t, true) caso isto ocorra;

Touches: analisa se duas geometrias possuem alguma interseção e retorna verdadeiro (t, true) caso isto ocorra;

Crosses: analisa se duas geometrias se cruzam e retorna verdadeiro (t, true) caso isto ocorra;

Within: analisa se uma geometria está continda na outra e retorna verdadeiro (t, true) caso isto ocorra;

Contains: analisa se uma geometria contém a outra e retorna verdadeiro (t, true) caso isto ocorra.

PostGISPostGISPostGIS

Page 13: Postgis (short)

Nesse laboratório inicialmente temos uma máquina virtual com sistema operacional Ubuntu já com o postgreSQL e seu módulo postGIS instalados, bem como o servidor de mapas para internet Mapserver. Na máquina cliente em questão (Mac OS X Snow Leopard) temos o SIG Qgis e o PgAdmin III. Como a máquina virtual possui o samba instalado é possível passar arquivos para a mesma.

Postgis com Dados da Cidade de Aracaju

Page 14: Postgis (short)

● Bairros, Logradouros e Pontos de Interesse. ● Cada camada dessa pode ser tida como um tipo

de geometria: para Bairros -polígonos (MULTIPOLYGON), para Logradouros - linhas (MULTILINESTRING) e para Pontos de Interesse – pontos (POINT).

● Cada arquivo shape de cada camada na verdade é um conjunto de três arquivos da seguinte forma:

Camada Bairros = Bairros.shp, Bairros.shx e Bairros.dbf.

Postgis com Dados da Cidade de Aracaju

Page 15: Postgis (short)

#shp2pgsql -i -s 29194 -W iso88591 bairros.shp * > bairros.sql

Postgis com Dados da Cidade de Aracaju

Page 16: Postgis (short)

Tabela Bairros criada:

Postgis com Dados da Cidade de Aracaju

Page 17: Postgis (short)

Tabela Logradouros criada:

Postgis com Dados da Cidade de Aracaju

Page 18: Postgis (short)

Tabela Pontos de Interesse criada:

Postgis com Dados da Cidade de Aracaju

Page 19: Postgis (short)

Postgis com Dados da Cidade de Aracaju

Page 20: Postgis (short)

Postgis com Dados da Cidade de Aracaju

Page 21: Postgis (short)

Postgis com Dados da Cidade de Aracaju

Demonstração de uma consulta:

●CREATE OR REPLACE VIEW public.view1 AS SELECT b.gid, b.the_geom, b.nome, b."renda_media(sal-min_2000)" FROM bairros AS b ORDER BY 3 desc LIMIT 5;●INSERT INTO geometry_columns(f_table_catalog, f_table_schema, f_table_name, f_geometry_column, coord_dimension, srid, "type")SELECT '','public','view1','the_geom',ST_CoordDim(the_geom),ST_SRID(the_geom),GeometryType(the_geom)FROM public.view1 LIMIT 1;

Page 22: Postgis (short)

Postgis com Dados da Cidade de Aracaju

Demonstração de uma consulta:

Page 23: Postgis (short)

Postgis com Dados da Cidade de Aracaju

● Dúvidas? Desejam assistir mais consultas no laboratório?

Se ( Desejam )do{laboratorio}while(Desejam)

Fim – do -Se

FIM

Email: [email protected]