Diferenças entre edições de "Formação WebSIG"

De Dados Abertos
Ir para: navegação, pesquisa
(Exercício: Base de dados geográficas)
(Exercício: Publicação (fácil) de mapas na Web)
 
(Há 11 edições intermédias do mesmo utilizador que não estão a ser apresentadas)
Linha 50: Linha 50:
 
=== Exercício: Base de dados geográficas ===
 
=== Exercício: Base de dados geográficas ===
  
Mais info sobre [https://epsg.io/5016 EPSG:5016]
+
Ganhar familiaridade com base de dados geográficas. As bases de dados são a melhor tecnologia para grandes volumes de informação, pelo que se tornam bastante interessantes para guardar dados geográficos, tipicamente volumosos.
  
 
===== Objetivo =====
 
===== Objetivo =====
  
Dados:
+
* Criar base de dados
* [http://wiki.openstreetmap.pt/images/upload/ArqMadeira_CAOP2015_corrigida.zip CAOP 2015 Madeira]
+
* Acrescentar dados
* Dados do OSM da Madeira (madeira.osm)
+
* Introduzir o SQL
 +
* Introduzir os tipos de dados específicos (POINT, LINE, POLYGON, etc) e a sua codificação
 +
* Visualizar e manipular dados a partir do QGIS
 +
* Escrever triggers
  
<syntaxhighlight lang="bash">
+
===== Resolução =====
wget http://wiki.openstreetmap.pt/images/upload/madeira.poly
+
wget http://download.geofabrik.de/europe/portugal-latest.osm.pbf
+
osmosis --read-pbf file=portugal-latest.osm.pbf --bounding-polygon file=madeira.poly --write-xml madeira.osm
+
</syntaxhighlight>
+
  
<syntaxhighlight lang="SQL">
+
[[Base de dados geográficas]] (Madeira)
insert into spatial_ref_sys (srid, auth_name, auth_srid, srtext, proj4text) values
+
(5016, 'EPSG', 5016, 'PROJCS["PTRA08 / UTM zone 28N", GEOGCS["PTRA08", DATUM["Autonomous_Regions_of_Portugal_2008", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG","1041"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","5013"]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",0], PARAMETER["central_meridian",-15], PARAMETER["scale_factor",0.9996], PARAMETER["false_easting",500000], PARAMETER["false_northing",0], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["Easting",EAST], AXIS["Northing",NORTH], AUTHORITY["EPSG","5016"]]', '+proj=utm +zone=28 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs');
+
</syntaxhighlight>
+
  
<syntaxhighlight lang="bash">
+
[[Base de dados geográficas para Águeda|Base de dados geográficas]] (Águeda)
osm2pgsql -H localhost -E 5016 --slim --drop -U user -W -d madeira -c madeira.osm
+
</syntaxhighlight>
+
  
<syntaxhighlight lang="bash">
+
=== Exercício: Publicação (fácil) de mapas na Web ===
ogr2ogr -overwrite -f "PostgreSQL" PG:"host=localhost user=user dbname=madeira password=user" -a_srs EPSG:5016 -lco PRECISION=NO -nln caop ArqMadeira_AAd_CAOP2015_corrigida.shp
+
</syntaxhighlight>
+
  
 +
===== Objetivo =====
 +
 +
* Publicar um mapa com o CartoDB
 +
* Preparar e publicar um mapa com TileMill + openstreetmap-carto
  
 
===== Descrição =====
 
===== Descrição =====
  
<syntaxhighlight lang="SQL">
+
Usar a informação do OSM e os conhecimentos de SQL para gerar uma tabela DE PONTOS com todos os restaurantes da ilha (pontos ou poligonos).
ALTER TABLE planet_osm_point ADD gid serial UNIQUE;
+
ALTER TABLE planet_osm_line ADD gid serial UNIQUE;
+
ALTER TABLE planet_osm_polygon ADD gid serial UNIQUE;
+
ALTER TABLE planet_osm_roads ADD gid serial UNIQUE;
+
</syntaxhighlight>
+
  
<syntaxhighlight lang="SQL">
+
===== Resolução =====
DROP TABLE planet_osm_line;
+
DROP TABLE planet_osm_point;
+
DROP TABLE planet_osm_polygon;
+
DROP TABLE planet_osm_roads;
+
  
DROP TABLE planet_osm_nodes;
+
Criar uma shapefile (num zip) e publicá-la com o CartoDB.
DROP TABLE planet_osm_rels;
+
DROP TABLE planet_osm_ways;
+
</syntaxhighlight>
+
  
===== Resolução =====
+
[[O estilo openstreetmap-carto]]
  
=== Exercício: Publicação (fácil) de mapas na Web ===
+
=== Exercício: Serviço de mapas baseado em Geoserver ===
  
 
===== Objetivo =====
 
===== Objetivo =====
  
Estudar e perceber as plataformas de publicação de mapas na web, baseadas em open source. Perceber os modelos de negócio associados.
+
Por em produção um servidor de mapas com o Geoserver, disponibilizando os dados do OSM.
  
 
===== Descrição =====
 
===== Descrição =====
  
Este exercício é mais relaxante, e permite resultados mais rápidos.
+
A ideia é criar um serviço de mapas, integralmente suportado por nós. O resultado é um serviço WMS/WMTS que oferece mapas do OSM.
* Recorre a plataformas muito sofisticadas, começadas por pequenas empresas:
+
** CartoDB
+
** Mapbox Studio
+
* Orientadas ao jornalista, técnico de SIG, etc, sem competências de programação
+
  
 
===== Resolução =====
 
===== Resolução =====
  
A resolução deste exercício passa pela publicação de um determinado dataset na web, extraído do OSM.
+
[[O Geoserver a servir mapas do OpenStreetMap]]
  
=== Exercício: Publicação (tradicional) de mapas na Web ===
+
=== Exercício: Serviço de mapas baseado em QGIS Server e QGIS Client ===
  
 
===== Objetivo =====
 
===== Objetivo =====
  
Por em produção um servidor de mapas.
+
Por em produção um servidor de mapas com o QGIS Server, disponibilizando na web um projeto desenvolvido no QGIS, usando o QGIS Client.
  
 
===== Descrição =====
 
===== Descrição =====
  
A ideia é criar um serviço de mapas, integralmente suportado por nós.
+
Estamos a falar de três componentes distintas que vamos usar:
 
+
* QGIS desktop, a ferramenta de SIG desktop que usamos para explorar e gerir a informação geográfica. Permite-nos gravar um projeto QGIS.
* GeoServer
+
* QGIS Server, uma ferramenta que corre num servidor e que funciona como servidor de mapas WMS, como o Mapserver ou o Geoserver. É configurado a partir de um projeto QGIS.
* MapServer
+
* QGIS Client, um software web que permite explorar em ambinte web um projeto QGIS.
* QGIS Server
+
  
 
===== Resolução =====
 
===== Resolução =====
  
A resolução deste exercício passa pela publicação de informação como serviço WMS, WFS e WMTS.
+
[[Publicação de um projeto QGIS]]
 +
 
 +
[[Publicação de um projeto QGIS com Lizmap plugin e Lizmap Web Client]]
  
 
[[Category:WebSIG]]
 
[[Category:WebSIG]]

Edição atual desde as 23h41min de 7 de dezembro de 2015

Formação WebSIG

Preparação

Instalação do software de virtualização VirtualBox

Instalação da máquina virtual OSGeo Live 9

Pós instalação do OSGeo Live 9

Exercício: OpenTripPlanner

Objetivo

Disponibilizar uma plataforma de routing na web, para o cálculo de rotas na Madeira.

Descrição

Este exercício é bastante completo e é paradigmático da abordagem open source:

  • Usa uma diversidade de ferramentas - as mais adequadas - na prossecução do objetivo
  • Usa dados abertos (e esta utilização promove a sua atualização e completude)
  • Obriga a tratamento de dados, utilização de ferramentas e programação
  • Acrescenta valor ao projeto existente: vamos contribuir com uma tradução portuguesa do OpenTripPlanner
Resolução

A resolução deste exercício não é trivial. É preciso uma sucessão enorme de passos até à sua concretização.

Obter e tratar os dados para o routing

Geração do grafo de routing

Execução do OpenTripPlanner

Desenvolvimento sobre o github

Gestão de repositórios com git

Ambiente de desenvolvimento

Gerar novo grafo e correr o servidor

Criar uma ramificação no git para fazer as alterações

Pequenas alterações ao código do OpenTripPlanner

Partilhar novas alterações com a comunidade

Exercício: Base de dados geográficas

Ganhar familiaridade com base de dados geográficas. As bases de dados são a melhor tecnologia para grandes volumes de informação, pelo que se tornam bastante interessantes para guardar dados geográficos, tipicamente volumosos.

Objetivo
  • Criar base de dados
  • Acrescentar dados
  • Introduzir o SQL
  • Introduzir os tipos de dados específicos (POINT, LINE, POLYGON, etc) e a sua codificação
  • Visualizar e manipular dados a partir do QGIS
  • Escrever triggers
Resolução

Base de dados geográficas (Madeira)

Base de dados geográficas (Águeda)

Exercício: Publicação (fácil) de mapas na Web

Objetivo
  • Publicar um mapa com o CartoDB
  • Preparar e publicar um mapa com TileMill + openstreetmap-carto
Descrição

Usar a informação do OSM e os conhecimentos de SQL para gerar uma tabela DE PONTOS com todos os restaurantes da ilha (pontos ou poligonos).

Resolução

Criar uma shapefile (num zip) e publicá-la com o CartoDB.

O estilo openstreetmap-carto

Exercício: Serviço de mapas baseado em Geoserver

Objetivo

Por em produção um servidor de mapas com o Geoserver, disponibilizando os dados do OSM.

Descrição

A ideia é criar um serviço de mapas, integralmente suportado por nós. O resultado é um serviço WMS/WMTS que oferece mapas do OSM.

Resolução

O Geoserver a servir mapas do OpenStreetMap

Exercício: Serviço de mapas baseado em QGIS Server e QGIS Client

Objetivo

Por em produção um servidor de mapas com o QGIS Server, disponibilizando na web um projeto desenvolvido no QGIS, usando o QGIS Client.

Descrição

Estamos a falar de três componentes distintas que vamos usar:

  • QGIS desktop, a ferramenta de SIG desktop que usamos para explorar e gerir a informação geográfica. Permite-nos gravar um projeto QGIS.
  • QGIS Server, uma ferramenta que corre num servidor e que funciona como servidor de mapas WMS, como o Mapserver ou o Geoserver. É configurado a partir de um projeto QGIS.
  • QGIS Client, um software web que permite explorar em ambinte web um projeto QGIS.
Resolução

Publicação de um projeto QGIS

Publicação de um projeto QGIS com Lizmap plugin e Lizmap Web Client