Anda di halaman 1dari 75

Mapserver Servidor de Mapas

Joo Araujo

Por que fazer mapas?

Mapas tm tido papel prepoderante nas atividades humanas por milhares de anos. Desde o incio, mapas eram usados para mostrar onde as coisas estavam. O mundo consiste de coisas que tm uma relao espacial com outra.

Um mapa um modelo que contm uma representao das coisas no mundo.

Era de ouro dos mapas


Corresponde poca das exploraes.


Mapas eram a chave para a riqueza. As ferramentas desta era foram o compasso, o sextante e os relgios precisos. As pessoas desenhavam e coloriam seus mapas mo. Anlise e criao de mapas era algo lento e trabalhoso.

Prxima era de ouro...

Mapas digitais, Sistemas de Informaes Geogrficas e Servios Baseados em Localizao representam a prxima era de ouro. Suas ferramentas so os computadores, a Internet e o Sistema de Posicionamento Global (GPS)

Mapas Digitais

Mapas digitais fornecem um meio eficiente e prtico de criao de imagens grficas. Por causa disso, podem ser dinmicos e criados em tempo real. Mapas digitais, porm, no garantem qualidade. Dados podem ser usados erroneamente, resultando em mapas com erros ou contedo questionvel.

Estmulos

Mapas digitais foram impulsionados pela necessidade da indstria (por exemplo, minerao), gestores de recursos naturais, pesquisadores, etc...
Com o surgimento da Internet e o barateamento do hardware, mapas digitais se tornaram inevitveis.

Aplicaes

Mapas do tempo.
Instrues de direo no trnsito, obtidas por meio de GPS.

Sites que fornecem mapas sob demanda.

O Poder dos Mapas Digitais

Criao de mapas convencionais:


Observao e transposio para o papel do mundo real. Se uma feio muda, outro mapa deve ser criado.
Feies armazenadas em diferentes camadas. Um mapa pode ser redesenhado sem recomear do zero. Uma vez modificada esta camada, o mapa tambm est atualizado instantaneamente.

Criao de mapas digitais


Criador de Mapas Digitais

Em vez de se concentrar nos detalhes de uma rea particular do globo, ele pode se concentrar em como apresentar melhor a informao.

Dificuldades na Criao de Mapas Digitais

1 - Mapas personalizados

Um conhecimento pessoal, em vez de um conhecimento geral, o que faz um mapa til para algum.

2 - Barreiras Tecnolgicas

Custo de programas usados para a criao de mapas pode ser proibitivo. Programas de Cdigo Aberto permitem diminuir este custo. Interoperabilidade a capacidade que um programa tem de compartilhar dados com outro programa. Uso de Padres Abertos. Conhecimento Tcnico sobre as ferramentas para Internet.

Diferentes Formas de Uso da Internet para Criao de Mapas

Um modo efetivo de dispor mapas para um pblico no especializado a Web. As aplicaes podem ser de dois tipos:

Estticas Dinmicas

Mapas Estticos

Basta apenas conhecer os rudimentos de html para colocar um mapa esttico na Web.

Mapas Dinmicos

O usurio pode interagir com o mapa, requisitando novas vises do dado geogrfico. Necessitam de um programa baseado na Web.

Servidor Web e de Mapas

O usurio envia pedido de mapa ao servidor Web. O Servidor Web passa o pedido para o servidor de mapas. O Servidor de Mapas calcula e monta o mapa requisitado. O mapa enviado ao navegador do usurio.

Fluxo da Informao

Tipos de Usurios

Provedores de Servio Usurios Finais

Exemplos http://mapsherpa.com/tsunami/

http://topozone.com/

http://www.dnr.state.mn.us/maps/

Outros

http://www.trailscanada.com http://www.mapitout.com/restaurants http://www.gommap.org/ http://www.mapsherpa.com/hawaii2/ http://mesonet.tamu.edu/ http://spatialguru.com/maps/apps/global

Para fazer um site com servio de mapas precisamos:

Um computador Conexo com a Internet Um servidor Web Um servidor de mapas para Web Informaes geogrficas Metadados sobre os mapas.

Como Fazer Mapas Digitais?

Todo mapa tem um propsito. Ferramentas computacionais permitem coletar e interagir com os dados. Este dado usado para criar mapas. Tambm pode ser usado para gerar outros dados ou fazer estatsticas. O mesmo dado pode ser aplicado em diferentes projetos.

Mapa resultante

Tarefas Comuns na Criao de Mapas

Observaes quantificadas. Localizao dos pontos de observao. Visualizao destes pontos no mapa.

Dificuldades

Dados confiveis Dependncia de ferramentas Digitais Como conferir resultados computacionais? Formatos de dados, por vezes incompatveis entre si. Uso das ferramentas corretas.

Identificando os Tipos de Tarefas do Projeto

1 - Visualizao e Mapeamento

Ver e mapear no so necessariamente a mesma coisa. Algumas aplicaes tm por objetivo apenas a visualizao do dado geogrfico. Outras so voltados para a produo de mapas que podem at ser impressos.

2 - Anlise

Apenas ver no o objetivo final de um projeto. Algum tipo de anlise necessria para melhorar o entendimento dos dados geogrficos. Ex: Classificao de Dados, Clculo de Proximidade Espacial e Estatstica.

3 - Criao e Manipulao

Digitalizao Uso de ferramentas SIG sobre os dados digitalizados.

4 - Converso

Certos dados devem estar sob um formato de arquivo determinado. Pode levar a uma dependncia a um fabricante. Open Geospatial Consortium (OGC)

5 - Compartilhamento

Compartilhamento de mapas atravs de aplicaes na Web. Uso de especificaes de servios web para compartilhar dados entre aplicaes. O uso dos padres de servios Web OGC (OWS) permite o compartilhamento de dados.

5-1 Mapas feito a partir de diversos servidores remotos usando OWS

Mapserver

Imagine que voc tem que criar um mapa a partir das seguintes fontes:

Shapefiles ESRI Arquivos Intergraph Microstation design (DGN) Arquivos MapInfo TAB Bancos de Dados Espaciais ORACLE Arquivos GML Padres OGC Bancos de Dados Espaciais PostGIS.

Mapserver pode ser a soluo

Suporta vrios formatos. Pode ser usado em vrias plataformas de hardware e Sistema Operacional. Tem cdigo aberto: voc pode modific-lo. Nativamente, Mapserver suporta formatos ESRI Shapefile e Geotiff. Com a biblioteca GDAL, suporta mais de 40 outros formatos raster.

Geospatial Data Abstraction Library (GDAL)

Biblioteca de traduo de formatos de dados geoespaciais raster; A aplicao que usa a GDAL tem acesso aos mais de 40 formatos de dados, conseqentemente, o desenvolvedor no precisa desenvolver rotinas para cada tipo de formato. Possui alguns utilitrios pr-compilados que permitem a manipulao de dados diretamente pelo usurio.

Interface de Programao GDAL

A API de GDAL permite acessar dados raster a partir de programas usando C, C++ e Python. Com o Simplified Wrapper and Interface Generator (SWIG) voc pode criar interfaces para Perl, Java, C#, Tcl 8.0, Java, JavaScript, Eiffel, PHP,Guile, Ruby, Mzscheme, Ocaml, Pike, Allegro CL, Modula-3, Lua, CLISP, Common Lisp

Utilitrios GDAL

gdalinfo info sobre um arquivo raster; gdal_translate traduz imagens entre formatos e tambm redimensiona; gdalwarp Transforma imagem para outra projeo; gdal_merge.py Pega vrias imagens e as junta em uma nica imagem.

OGR Simple Features Library

Biblioteca C++ que permite leitura e, s vezes, escrita em arquivos de imagens vetoriais. Ex: ESRI Shapefiles, S-57, SDTS, PostGIS, Oracle Spatial Format. Pode ser usada uma querie SQL. O nome OGR mantido porque est no cdigo.

Utilitrios OGR

ogrinfo Informao sobre imagem vetorial; ogr2ogr converso entre formatos.

PostGIS

PostgreSQL um potente banco de dados relacional; O PostGIS estende o PostgreSQL permitindo o armazenamento de dados geogrficos.

OpenEV

Visualizador de imagens raster ou vetoriais. Tambm permite alguma manipulao.

Sumrio

Sites

GDAL, OGR e OpenEV so parte do FWTools FWTools: http://fwtools.maptools.org GDAL: http://www.gdal.org OGR: http://www.gdal.org/ogr PostGIS: http://www.refractions.net

Vamos falar de Software Livre.

Software Livre x Freeware

Uso sem custo; Acesso ao cdigo-fonte com possibilidade de alterao; Normalmente possui uma comunidade mantendo (desenvolvendo) o cdigo.

Uso sem custo; No se tem acesso ao cdigo-fonte; Normalmente a empresa disponibiliza o Freeware visando alguma estratgia comercial.

Software Livre x Cdigo Aberto

"Open Source uma metodologia de desenvolvimento, enquanto Software Livre um movimento social".

SL: 4 liberdades
1. Liberdade de execuo do programa com qualquer finalidade. 2. Liberdade para estudar o programa e adapt-lo sua necessidade. - Requisito: - acesso ao cdigofonte; 3. Liberdade para redistribuir cpias do software. 4. Liberdade para aperfeioar o programa e liberar os seus aperfeioamentos. - Requisito: - acesso ao cdigo-fonte;

Vantagens do SL

Reduo do custo de licenciamento; Aplicaes so customizadas para as necessidades do cliente; Questes podem ser resolvidas internamente; Grande e participativa comunidade de usurios.

Licena GPL (GNU General Public License)

Efeito contaminante:

Especificaes OpenGIS

Simple Features SQL (SFS)

Define especificaes para modelagem do API (application programming interface) que possibilite publicar, armazenar, acessar e fazer operaes sobre feies simples (ponto, linha, polgono, etc). Estas normas definem como os dados devem ser estruturados com base no SQL.

Web Map Service (WMS)


Define 4 protocolos (GetCapabilities, GetMap, GetFeatureInfo e DescribeLayer) que permitem a leitura de mltiplas camadas de informaes (layers) georreferenciadas contendo vetores e/ou imagens. Esta conexo permite somente consulta de dados.

Web Feature Service (WFS)

Define operaes para manipulao de feies simples, permitindo que o cliente e o servidor se comuniquem no nvel de feio. Na prtica, isto significa que este padro estabelece no somente a possibilidade de consulta aos dados, mas tambm a possibilidade de escrita dos mesmos.

Geography Markup Language (GML)


Padro baseado no XML desenvolvido para permitir o transporte e armazenamento de informaes geogrficas.

Mapserver

Ambiente de desenvolvimento para construo de aplicaes espaciais voltadas para WEB; No um GIS completo, nem tem este objetivo; Criado pela Universidade de Minnesota com apoio da NASA; http://mapserver.gis.umn.edu; Participao de empresas privadas no projeto; Grupo de desenvolvedores brasileiros: UNIVALI http://mapserver.cttmar.univali.br/

Caractersticas Tcnicas (i)

Formatos vetoriais suportados: ESRI shapefiles, EsRI ArcSDE, etc; Formatos matriciais suportados (8 bits): TIFF/GeoTIFF, GIF, PNG, ERDAS, JPEG e EPPL7; Seleo por item/valor, ponto, rea ou qualquer feio; Suporte a projees de mapas / projeo em tempo real para mais de 1000 projees atravs da biblioteca Proj.4

Caractersticas Tcnicas (ii)


Suporte para fontes TrueType; Legenda e escala automticas; Projeo em tempo real; Integrao com o PostGIS; Projeto de rpida evoluo; Possibilidade de integrao com bibliotecas comerciais para gerao de PDF em tempo real; Possibilidade de gerao do formato SWF (Flash).

Linguagens Suportadas

PHP Python Java PERL Ruby C#

Plataformas

Linux Windows Mac OS FreeBSD Solaris Outros

Funcionamento

Funcionamento (ii)

Mapa Interativo de Santa Catarina

http://www.mapainterativo.ciasc.gov.br/sc.phtml

LatinoWare

http://webgeo.pr.gov.br/mapserver/latinoware/

Como o Mapserver opera?

A principal funo dele ler dados de vrias fontes e juntar estas camadas em um arquivo de imagem. Uma camada pode ser uma imagem de satlite, as fronteiras de um pas ou pontos mostrando as maiores cidades. O processo de renderizar uma imagem ocorre cada vez que feito um pedido de novo mapa. Mesmo um zoom gera este pedido.

Modos de Operao

CGI Mapserver funciona dentro de ambiente de Servidor Web como um script CGI. Mapscript A API do Mapserver acessvel por programas em PERL, Python, PHP...

Estado

Mapserver stateless, isto , ele no guarda seu estado entre vrias chamadas.

Mapfile e templates HTML


O mapserver baseado em templates. 1- Quando chamado, Mapserver l um arquivo de configurao (mapfile) que descreve as camadas e outros elementos do mapa. 2- Ele desenha e salva o mapa. 3- Depois, ele l um ou mais templates em HTML. 4- Cada template consiste de algumas tags HTML e informaes para o Maserver inserir sua informaes. Mapserver substitui os valores e devolve ao servidor web.

Mapfile
Armazena a configurao usada. Inclui informaes sobre 1 Quais camadas devem ser renderizadas; 2 Onde est o foco geogrfico do mapa; 3 Qual projeo est sendo usada; 4 Qual o formato grfico de sada; 5 Configura o modo como a legenda e a escala sero usadas.

Sada do Mapserver
No apenas o mapa pode ser gerado. Mapserver gera tambm: Legendas; Escalas; Mapas de referncia.

Mapfile simples (.map)


MAP SIZE 600 300 EXTENT -180 -90 180 90 LAYER NAME countries TYPE POLYGON STATUS DEFAULT DATA countries.shp CLASS OUTLINECOLOR 100 100 100 END END END

Template em HTML
<HTML> <HEAD><TITLE>MapServer Test</TITLE></HEAD> <CENTER><H2>Teste do Mapserver</H2> <HR> <FORM method=GET action="/cgi-bin/mapserv"> <INPUT NAME="img" TYPE="image" SRC="[img]" width=600 height=300 border=0 ALT="Map Image"> <INPUT type=hidden name=zoomdir value=1 [zoomdir_1_check] > <INPUT type=hidden name=zoomsize size=4 value=[zoomsize]> <INPUT type="hidden" name="imgxy" value="[center_x] [center_y]"> <INPUT type="hidden" name="imgext" value="[mapext]"> <INPUT type="hidden" name="map" value="[map]"> <INPUT type="hidden" name="savequery" value="true"> <INPUT type="hidden" name="mapext" value="shapes"> </FORM></CENTER></BODY></HTML>

FIM

Anda mungkin juga menyukai