SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
EXPLORANDO O HTML5 PARA 
VISUALIZAÇ ÃO DE DADOS 
GEOGRÁFICOS 
Marcel Mendonça Grilo1, Jéferson José Ribeiro2,, Sérgio Souza Costa3 
1Cientista da Computação, UNIFEI, Itajubá-MG, marcelgrilo86@gmail.com 
2Cientista da Computação, UNIFEI, Itajubá-MG, jefersonjribeiro@gmail.com 
3Doutor em Computação Aplicada, UFMA, São Luís-MA, prof.sergio.costa@gmail.com
Sérgio Souza Costa 
Professor - UFMA 
Doutor em Computação Aplicada (INPE)
A “invenção da Web” - 1991 
http://info.cern.ch/hypertext/WWW/TheProject.html
Consumidor Provedor 
Requisição 
Resposta 
Cliente 
Servidor 
Informação
Mapas, um importante meio de apresentar 
informações espaciais. 
Informações 
não textuais.
Servidores de mapas 
Primeiro servidor 
de mapas 1993
Servidores de mapas - wms 
GetMap 
Cliente 
Servidor 
Resposta 
1. Preparar dados 
2. Definir simbologias 
3. Gerar e renderizar tiles 
4. Fazer caches de tiles 
5. Publicar tile 
1. Exibir tiles 
Toda interação com o 
usuário gera uma 
requisição ao 
servidor, ex: zoom, 
mover , consulta a 
atributos.
Mudança de paradigma 
A Web não é apenas um meio de transmissão de 
informações. Aplicações ricas na internet.
Whatwg 
Uma nova especificação, 
paras as novas necessidades. 
Multimedia 
Offline & Storage 
Graphics & 3D 
Performance 
Devices 
Semantics 
Connectivity
Dados vetoriais 
● Inline SVG 
● Canvas
Inline SVG 
SVG (Scalabe Vector Graphics) integrado ao 
documento HTML. 
Um bairro de Recife.
Canvas 
Uma região retangular da tela, que pode ser manipulada 
por uma API JavaScript. 
HTML 
<canvas id="c" width="500" height="375"></canvas> 
var b_canvas = document. 
getElementById("c"); 
var context = b_canvas.getContext 
("2d"); 
context.fillRect(50, 25, 150, 100); 
Canvas 
JavaScript 
Cores Estilos Sombras Caminhos Texto 
Desenho de 
Estilos de Manipulação 
Composição 
imagens 
linha 
de pixels 
Retângulos 
Transformações
Abstraindo a visualização 
Uma biblioteca que abstraia a renderização dados 
geográficos, lidando com diferentes formatos. 
Inline SVG 
Canvas 
Aplicação Biblioteca 
GML 
KML 
GeoJSON 
OSM-XML 
1. Leaflet 
2. OpenLayer 
3. Cartagen
Leaflet (http://leafletjs.com/) 
● Biblioteca JavaScript, moderna (JQuery like) e leve 
(125kb). 
● Desenvolvida e mantida pela Cloudmade, e com 
contribuições de diversos programadores. 
● Muito bem documentada, com guias, tutoriais e exemplos. 
● Suporte a SVG, canvas e VML (IE antigos). 
● Extendido através de plugins 
● Tile layers (OSM, WMS) 
● Vector layers (GeoJSON) 
● Projeção (latlong,Spherical Mercator)
Leaflet - Explorando Usando requisições assíncronas 
Integrando diferentes camadas, de 
diferentes fontes. 
Fonte: GeoSON - Recife Dados 
Micro-regiões 
Ciclovia 
Praças e áreas verdes 
(AJAX) para retornar os dados 
geográficos que coincidem com uma 
região selecionada.
OpenLayer 3 
● Biblioteca JavaScript moderna (versão 3 redesenhada). 
● Muito bem documentada, com guias, tutoriais e exemplos. 
● Suporte a SVG, canvas e VML (IE antigos). 
● Muitos recursos. 
● Tile layers (OSM, Bing, MapQuest, WMS) 
● Vector layers (GeoJSON, KML, GML, TopoJSON) 
● Projeção (latlong,Spherical Mercator)
OpenLayer 3 - Explorando 
BingMaps + Recife Dados (GeoJSON)
Fonte de dados vetoriais 
1. Localmente 
2. Portal de dados abertos governamentais 
3. OpenStreetMap (API) 
4. Servidores de dados vetoriais
Portal de dados abertos 
governamentais 
Micro-regiões 
Ciclovia 
Praças e áreas verdes 
http://dados.recife.pe.gov.br/dataset 
Dados abertos governamentais são 
“dados produzidos pelo governo e 
colocados à disposição das 
pessoas de forma a tornar possı́vel 
não apenas sua leitura e 
acompanhamento, mas também 
sua reutilização em novos projetos, 
sı́tios e aplicativos; seu cruzamento 
com outros dados de diferentes 
fontes” (W3C, 2011)
http://api.openstreetmap.org/api/0.6/map?bbox=-43.7161000,-20.5347000, 
-43.6822000,-20.5061000 
OSM (API) + 
Bing Maps 
OpenStreetMap (API)
OpenStreetMap (API) 
Formato Tamanho 
OSM (XML) 4,1 MB 
GeoJSON 6,3 MB 
GeoJSON 
Minify 
1,9 MB
OpenStreetMap (API) 
Visualização prejudicada em níveis de zoom 
baixos, pelo grande volume de dados.
Servidores de dados vetoriais 
Vector tiling 
Multiescala e 
generalização 
Fonte: GAFFURI (2012)
Servidores de dados vetoriais 
Existem alguns protótipos, como o TileStache 
(Python) e OpenCarto (Java). Neste trabalho não 
foram explorados. 
OpenCarto
Considerações finais 
● Os servidores de mapas evoluíram muito nos últimos 20 anos, 
tornando mais fácil a experiência do usuário. 
● O HTML5 traz novas oportunidades e desafios na construção de 
outros tipos de aplicativos 
○ Não apenas prover informações espaciais. 
● O uso de dados vetoriais, não pode ser visto como substituto aos 
servidores de mapas atuais, mas sim a base para uma nova 
geração de aplicativos geográficos na web. 
● Existem ainda outros recursos, como GeoLocation, WebSocket, 
Offline Storage. 
● Visualização de dados vetoriais se mostra um importante 
instrumento de apoio a divulgação e integração de dados abertos 
governamentais.
Referências 
GAFFURI, J. Toward Web Mapping with Vector Data. In: XIAO, N.; KWAN, 
M.-P.; GOODCHILD, M.; SHEKHAR, S. (Eds.). Geographic Information 
Science SE - 7. Lecture Notes in Computer Science. [S.l.]: Springer Berlin 
Heidelberg, 2012. v. 7478p. 87–101. 
W3C. Manual dos dados abertos: governo. Disponı́vel em: <http://www. 
w3c.br/pub/Materiais/PublicacoesW3C/Manual_Dados_Abertos_WEB.pd 
f>.

Mais conteúdo relacionado

Destaque

From remote sensing to agent-based models
From remote sensing to agent-based modelsFrom remote sensing to agent-based models
From remote sensing to agent-based modelsSérgio Souza Costa
 
AppInventor - Conhecendo o ambiente e seus principais componentes
AppInventor - Conhecendo o ambiente e seus principais componentesAppInventor - Conhecendo o ambiente e seus principais componentes
AppInventor - Conhecendo o ambiente e seus principais componentesSérgio Souza Costa
 
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneSérgio Souza Costa
 
Explorando Games para o Ensino do Pensamento Computacional
Explorando Games para o Ensino do Pensamento ComputacionalExplorando Games para o Ensino do Pensamento Computacional
Explorando Games para o Ensino do Pensamento ComputacionalSérgio Souza Costa
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsSérgio Souza Costa
 
Visualização de dados
Visualização de dadosVisualização de dados
Visualização de dadosgrupohanium
 
Aula Visualização de Dados Parte 2 Data Journalism
Aula Visualização de Dados Parte 2 Data Journalism Aula Visualização de Dados Parte 2 Data Journalism
Aula Visualização de Dados Parte 2 Data Journalism Daniela Osvald Ramos
 
Visualização de dados
Visualização de dadosVisualização de dados
Visualização de dadoslrmodesto
 
Programa de Jornalismo de Dados e Visualização 2013
Programa de Jornalismo de Dados e Visualização 2013Programa de Jornalismo de Dados e Visualização 2013
Programa de Jornalismo de Dados e Visualização 2013Sérgio Boeck Lüdtke
 
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)Leandro Guerra
 
Visualização de Dados - Pesquisa e Prática - Esperança & Kosminsky
Visualização de Dados - Pesquisa e Prática - Esperança & KosminskyVisualização de Dados - Pesquisa e Prática - Esperança & Kosminsky
Visualização de Dados - Pesquisa e Prática - Esperança & KosminskyDoris Kosminsky
 
Visualização de dados usando Nagios e ANA
Visualização de dados usando Nagios e ANAVisualização de dados usando Nagios e ANA
Visualização de dados usando Nagios e ANAFernando Lunardelli
 
Visualização de dados na web - Adailton Nunes
 Visualização de dados na web - Adailton Nunes Visualização de dados na web - Adailton Nunes
Visualização de dados na web - Adailton Nunesadailtonunes
 

Destaque (20)

Herança e Encapsulamento
Herança e EncapsulamentoHerança e Encapsulamento
Herança e Encapsulamento
 
From remote sensing to agent-based models
From remote sensing to agent-based modelsFrom remote sensing to agent-based models
From remote sensing to agent-based models
 
App inventor - aula 03
App inventor  - aula 03App inventor  - aula 03
App inventor - aula 03
 
Abstract classes and interfaces
Abstract classes and interfacesAbstract classes and interfaces
Abstract classes and interfaces
 
Software
SoftwareSoftware
Software
 
AppInventor - Conhecendo o ambiente e seus principais componentes
AppInventor - Conhecendo o ambiente e seus principais componentesAppInventor - Conhecendo o ambiente e seus principais componentes
AppInventor - Conhecendo o ambiente e seus principais componentes
 
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
 
Explorando Games para o Ensino do Pensamento Computacional
Explorando Games para o Ensino do Pensamento ComputacionalExplorando Games para o Ensino do Pensamento Computacional
Explorando Games para o Ensino do Pensamento Computacional
 
Contextualizando o moodle
Contextualizando o moodleContextualizando o moodle
Contextualizando o moodle
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cells
 
Visualização de dados
Visualização de dadosVisualização de dados
Visualização de dados
 
Mensuração e Visualização de Dados
Mensuração e Visualização de DadosMensuração e Visualização de Dados
Mensuração e Visualização de Dados
 
Aula Visualização de Dados Parte 2 Data Journalism
Aula Visualização de Dados Parte 2 Data Journalism Aula Visualização de Dados Parte 2 Data Journalism
Aula Visualização de Dados Parte 2 Data Journalism
 
Visualização de dados
Visualização de dadosVisualização de dados
Visualização de dados
 
Programa de Jornalismo de Dados e Visualização 2013
Programa de Jornalismo de Dados e Visualização 2013Programa de Jornalismo de Dados e Visualização 2013
Programa de Jornalismo de Dados e Visualização 2013
 
Visualização de dados para a percepção humana
Visualização de dados para a percepção humanaVisualização de dados para a percepção humana
Visualização de dados para a percepção humana
 
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)
Gráficos Interativos (R) e Gráficos de Redes Complexas (Gephi)
 
Visualização de Dados - Pesquisa e Prática - Esperança & Kosminsky
Visualização de Dados - Pesquisa e Prática - Esperança & KosminskyVisualização de Dados - Pesquisa e Prática - Esperança & Kosminsky
Visualização de Dados - Pesquisa e Prática - Esperança & Kosminsky
 
Visualização de dados usando Nagios e ANA
Visualização de dados usando Nagios e ANAVisualização de dados usando Nagios e ANA
Visualização de dados usando Nagios e ANA
 
Visualização de dados na web - Adailton Nunes
 Visualização de dados na web - Adailton Nunes Visualização de dados na web - Adailton Nunes
Visualização de dados na web - Adailton Nunes
 

Semelhante a Explorando o HTML5 para visualização de dados geográficos

Trabalho Inglês Técnico.
Trabalho Inglês Técnico.Trabalho Inglês Técnico.
Trabalho Inglês Técnico.Lucas Lopes
 
Faculdade evolução
Faculdade evoluçãoFaculdade evolução
Faculdade evoluçãoFlavio Xp
 
Informática aplicada ao ensino da geografia
Informática aplicada ao ensino da geografiaInformática aplicada ao ensino da geografia
Informática aplicada ao ensino da geografiaGeane Silva
 
Apresentação cobrac04
Apresentação cobrac04Apresentação cobrac04
Apresentação cobrac04Nelson Marisco
 
Apresentação li segunda feira
Apresentação li segunda feiraApresentação li segunda feira
Apresentação li segunda feiracesar do amaral
 
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Alessandro Marchi Panaccione
 
Implementação de cadastro de parcelamento do solo utilizando softwares livres.
Implementação de cadastro de parcelamento do solo utilizando softwares livres.Implementação de cadastro de parcelamento do solo utilizando softwares livres.
Implementação de cadastro de parcelamento do solo utilizando softwares livres.Maria Claudia Oliveira
 
A progressive vector map browser for the web
A progressive vector map browser for the webA progressive vector map browser for the web
A progressive vector map browser for the webEric Queiros
 
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...Carlos Eduardo Pantoja
 
Map reduce novas abordagens para o processo de datamining em grandes volumn...
Map reduce   novas abordagens para o processo de datamining em grandes volumn...Map reduce   novas abordagens para o processo de datamining em grandes volumn...
Map reduce novas abordagens para o processo de datamining em grandes volumn...João Gabriel Lima
 
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...Filipe Aguilar Santana
 
Prefeitura Livre: Tecnologias Geoespaciais
Prefeitura Livre: Tecnologias GeoespaciaisPrefeitura Livre: Tecnologias Geoespaciais
Prefeitura Livre: Tecnologias GeoespaciaisHelton Uchoa
 
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...Narcélio de Sá
 
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...Carlos Alexandre
 
Utilizando GeoTools para Manipulação de Dados Geográficos - Apresentação
Utilizando GeoTools para Manipulação de Dados Geográficos - ApresentaçãoUtilizando GeoTools para Manipulação de Dados Geográficos - Apresentação
Utilizando GeoTools para Manipulação de Dados Geográficos - Apresentaçãopcollares
 

Semelhante a Explorando o HTML5 para visualização de dados geográficos (20)

Trabalho Inglês Técnico.
Trabalho Inglês Técnico.Trabalho Inglês Técnico.
Trabalho Inglês Técnico.
 
GIS em 3 horas
GIS em 3 horasGIS em 3 horas
GIS em 3 horas
 
Faculdade evolução
Faculdade evoluçãoFaculdade evolução
Faculdade evolução
 
Por dentro do GeoServer
Por dentro do GeoServerPor dentro do GeoServer
Por dentro do GeoServer
 
Informática aplicada ao ensino da geografia
Informática aplicada ao ensino da geografiaInformática aplicada ao ensino da geografia
Informática aplicada ao ensino da geografia
 
Apresentação cobrac04
Apresentação cobrac04Apresentação cobrac04
Apresentação cobrac04
 
Apresentação li segunda feira
Apresentação li segunda feiraApresentação li segunda feira
Apresentação li segunda feira
 
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
 
Geovisualização em portais WebGIS
Geovisualização em portais WebGISGeovisualização em portais WebGIS
Geovisualização em portais WebGIS
 
Implementação de cadastro de parcelamento do solo utilizando softwares livres.
Implementação de cadastro de parcelamento do solo utilizando softwares livres.Implementação de cadastro de parcelamento do solo utilizando softwares livres.
Implementação de cadastro de parcelamento do solo utilizando softwares livres.
 
A progressive vector map browser for the web
A progressive vector map browser for the webA progressive vector map browser for the web
A progressive vector map browser for the web
 
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
 
Map reduce novas abordagens para o processo de datamining em grandes volumn...
Map reduce   novas abordagens para o processo de datamining em grandes volumn...Map reduce   novas abordagens para o processo de datamining em grandes volumn...
Map reduce novas abordagens para o processo de datamining em grandes volumn...
 
Ciiee
CiieeCiiee
Ciiee
 
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...
Desenvolvimento de um protótipo de um sistema de informaçãO web para cadastro...
 
Prefeitura Livre: Tecnologias Geoespaciais
Prefeitura Livre: Tecnologias GeoespaciaisPrefeitura Livre: Tecnologias Geoespaciais
Prefeitura Livre: Tecnologias Geoespaciais
 
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...
Utilização do PostGIS para aplicações de inteligência espacial no setor de Sa...
 
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...
RESUMO Uma Proposta de Arquitetura Interoperável integrando Web, TV Digital e...
 
Utilizando GeoTools para Manipulação de Dados Geográficos - Apresentação
Utilizando GeoTools para Manipulação de Dados Geográficos - ApresentaçãoUtilizando GeoTools para Manipulação de Dados Geográficos - Apresentação
Utilizando GeoTools para Manipulação de Dados Geográficos - Apresentação
 
Geo dev ops
Geo dev opsGeo dev ops
Geo dev ops
 

Mais de Sérgio Souza Costa

Expressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasExpressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasSérgio Souza Costa
 
De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computadorSérgio Souza Costa
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosSérgio Souza Costa
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosSérgio Souza Costa
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemSérgio Souza Costa
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaSérgio Souza Costa
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoSérgio Souza Costa
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theoremsSérgio Souza Costa
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosSérgio Souza Costa
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Sérgio Souza Costa
 
Aula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computaçãoAula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computaçãoSérgio Souza Costa
 

Mais de Sérgio Souza Costa (16)

Expressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasExpressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicas
 
De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computador
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmos
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficos
 
Modelagem de dados geográficos
Modelagem de dados geográficosModelagem de dados geográficos
Modelagem de dados geográficos
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de abertura
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - Introdução
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theorems
 
Turing e o problema da decisão
Turing e o problema da decisãoTuring e o problema da decisão
Turing e o problema da decisão
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetos
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)
 
Introdução ao Prolog
Introdução ao PrologIntrodução ao Prolog
Introdução ao Prolog
 
Heap - Python
Heap - PythonHeap - Python
Heap - Python
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
 
Aula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computaçãoAula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computação
 

Explorando o HTML5 para visualização de dados geográficos

  • 1. EXPLORANDO O HTML5 PARA VISUALIZAÇ ÃO DE DADOS GEOGRÁFICOS Marcel Mendonça Grilo1, Jéferson José Ribeiro2,, Sérgio Souza Costa3 1Cientista da Computação, UNIFEI, Itajubá-MG, marcelgrilo86@gmail.com 2Cientista da Computação, UNIFEI, Itajubá-MG, jefersonjribeiro@gmail.com 3Doutor em Computação Aplicada, UFMA, São Luís-MA, prof.sergio.costa@gmail.com
  • 2. Sérgio Souza Costa Professor - UFMA Doutor em Computação Aplicada (INPE)
  • 3. A “invenção da Web” - 1991 http://info.cern.ch/hypertext/WWW/TheProject.html
  • 4. Consumidor Provedor Requisição Resposta Cliente Servidor Informação
  • 5. Mapas, um importante meio de apresentar informações espaciais. Informações não textuais.
  • 6. Servidores de mapas Primeiro servidor de mapas 1993
  • 7. Servidores de mapas - wms GetMap Cliente Servidor Resposta 1. Preparar dados 2. Definir simbologias 3. Gerar e renderizar tiles 4. Fazer caches de tiles 5. Publicar tile 1. Exibir tiles Toda interação com o usuário gera uma requisição ao servidor, ex: zoom, mover , consulta a atributos.
  • 8. Mudança de paradigma A Web não é apenas um meio de transmissão de informações. Aplicações ricas na internet.
  • 9. Whatwg Uma nova especificação, paras as novas necessidades. Multimedia Offline & Storage Graphics & 3D Performance Devices Semantics Connectivity
  • 10. Dados vetoriais ● Inline SVG ● Canvas
  • 11. Inline SVG SVG (Scalabe Vector Graphics) integrado ao documento HTML. Um bairro de Recife.
  • 12. Canvas Uma região retangular da tela, que pode ser manipulada por uma API JavaScript. HTML <canvas id="c" width="500" height="375"></canvas> var b_canvas = document. getElementById("c"); var context = b_canvas.getContext ("2d"); context.fillRect(50, 25, 150, 100); Canvas JavaScript Cores Estilos Sombras Caminhos Texto Desenho de Estilos de Manipulação Composição imagens linha de pixels Retângulos Transformações
  • 13. Abstraindo a visualização Uma biblioteca que abstraia a renderização dados geográficos, lidando com diferentes formatos. Inline SVG Canvas Aplicação Biblioteca GML KML GeoJSON OSM-XML 1. Leaflet 2. OpenLayer 3. Cartagen
  • 14. Leaflet (http://leafletjs.com/) ● Biblioteca JavaScript, moderna (JQuery like) e leve (125kb). ● Desenvolvida e mantida pela Cloudmade, e com contribuições de diversos programadores. ● Muito bem documentada, com guias, tutoriais e exemplos. ● Suporte a SVG, canvas e VML (IE antigos). ● Extendido através de plugins ● Tile layers (OSM, WMS) ● Vector layers (GeoJSON) ● Projeção (latlong,Spherical Mercator)
  • 15. Leaflet - Explorando Usando requisições assíncronas Integrando diferentes camadas, de diferentes fontes. Fonte: GeoSON - Recife Dados Micro-regiões Ciclovia Praças e áreas verdes (AJAX) para retornar os dados geográficos que coincidem com uma região selecionada.
  • 16. OpenLayer 3 ● Biblioteca JavaScript moderna (versão 3 redesenhada). ● Muito bem documentada, com guias, tutoriais e exemplos. ● Suporte a SVG, canvas e VML (IE antigos). ● Muitos recursos. ● Tile layers (OSM, Bing, MapQuest, WMS) ● Vector layers (GeoJSON, KML, GML, TopoJSON) ● Projeção (latlong,Spherical Mercator)
  • 17. OpenLayer 3 - Explorando BingMaps + Recife Dados (GeoJSON)
  • 18. Fonte de dados vetoriais 1. Localmente 2. Portal de dados abertos governamentais 3. OpenStreetMap (API) 4. Servidores de dados vetoriais
  • 19. Portal de dados abertos governamentais Micro-regiões Ciclovia Praças e áreas verdes http://dados.recife.pe.gov.br/dataset Dados abertos governamentais são “dados produzidos pelo governo e colocados à disposição das pessoas de forma a tornar possı́vel não apenas sua leitura e acompanhamento, mas também sua reutilização em novos projetos, sı́tios e aplicativos; seu cruzamento com outros dados de diferentes fontes” (W3C, 2011)
  • 21. OpenStreetMap (API) Formato Tamanho OSM (XML) 4,1 MB GeoJSON 6,3 MB GeoJSON Minify 1,9 MB
  • 22. OpenStreetMap (API) Visualização prejudicada em níveis de zoom baixos, pelo grande volume de dados.
  • 23. Servidores de dados vetoriais Vector tiling Multiescala e generalização Fonte: GAFFURI (2012)
  • 24. Servidores de dados vetoriais Existem alguns protótipos, como o TileStache (Python) e OpenCarto (Java). Neste trabalho não foram explorados. OpenCarto
  • 25. Considerações finais ● Os servidores de mapas evoluíram muito nos últimos 20 anos, tornando mais fácil a experiência do usuário. ● O HTML5 traz novas oportunidades e desafios na construção de outros tipos de aplicativos ○ Não apenas prover informações espaciais. ● O uso de dados vetoriais, não pode ser visto como substituto aos servidores de mapas atuais, mas sim a base para uma nova geração de aplicativos geográficos na web. ● Existem ainda outros recursos, como GeoLocation, WebSocket, Offline Storage. ● Visualização de dados vetoriais se mostra um importante instrumento de apoio a divulgação e integração de dados abertos governamentais.
  • 26. Referências GAFFURI, J. Toward Web Mapping with Vector Data. In: XIAO, N.; KWAN, M.-P.; GOODCHILD, M.; SHEKHAR, S. (Eds.). Geographic Information Science SE - 7. Lecture Notes in Computer Science. [S.l.]: Springer Berlin Heidelberg, 2012. v. 7478p. 87–101. W3C. Manual dos dados abertos: governo. Disponı́vel em: <http://www. w3c.br/pub/Materiais/PublicacoesW3C/Manual_Dados_Abertos_WEB.pd f>.