postgis (short)

Post on 25-Jun-2015

953 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

BANCO DE DADOS GEOGRÁFICOS

Como abstrair dados geográficos computacionalmente?

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

ESTRUTURA DE DADOS VETORIAIS

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

ESTRUTURA DE DADOS VETORIAIS

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.

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

PostGIS

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

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)

(Sistemas de Referência)

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

● Mas qual a vantagem disso tudo?

PostGISPostGISPostGIS

● 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

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

● 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

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

Postgis com Dados da Cidade de Aracaju

Tabela Bairros criada:

Postgis com Dados da Cidade de Aracaju

Tabela Logradouros criada:

Postgis com Dados da Cidade de Aracaju

Tabela Pontos de Interesse criada:

Postgis com Dados da Cidade de Aracaju

Postgis com Dados da Cidade de Aracaju

Postgis com Dados da Cidade de Aracaju

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;

Postgis com Dados da Cidade de Aracaju

Demonstração de uma consulta:

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: xvzfbira@yahoo.com.br

top related