28
Introdução ao Mapserver

Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

Introdução ao Mapserver

Page 2: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 2/28

Mapserver

● Ambiente de desenvolvimento para construção de aplicações espaciais voltadas para WEB;

● Não é um GIS completo, nem tem este objetivo;● Criado pela Universidade de Minnesota com apoio

da NASA;● http://mapserver.gis.umn.edu;

Page 3: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 3/28

Financiamento e pesquisa

● Participação de empresas privadas no projeto;● Grupo de desenvolvedores brasileiros: UNIVALI -

http://mapserver.cttmar.univali.br/

Page 4: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 4/28

Formatos Vetoriais suportados

● ESRI shapefiles, ● ESRI ArcSDE, etc;

Page 5: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 5/28

Formatos Matriciais (8 bits)

● TIFF/GeoTIFF, ● GIF, PNG, ● ERDAS, ● JPEG e ● EPPL7;

Page 6: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 6/28

Características

● Seleção por item/valor, ponto, área ou qualquer feição;

● Suporte a projeções de mapas / projeção em tempo real para mais de 1000 projeções através da biblioteca Proj.4

Page 7: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 7/28

Características Técnicas

● Suporte para fontes TrueType;● Legenda e escala automáticas;● Projeção em tempo real;● Integração com o PostGIS;● Projeto de rápida evolução;● Possibilidade de integração com bibliotecas

comerciais para geração de PDF em tempo real;● Possibilidade de geração do formato SWF (Flash).

Page 8: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 8/28

Linguagens Suportadas

● PHP● Python● Java● PERL● Ruby● C#

Page 9: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 9/28

Plataformas

● Linux● Windows● Mac OS● FreeBSD● Solaris● Outros

Page 10: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 10/28

Funcionamento

Page 11: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 11/28

Funcionamento (ii)

Page 12: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 12/28

Mapa Interativo de Santa Catarina

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

Page 13: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 13/28

LatinoWare

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

Page 14: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 14/28

Como o Mapserver opera?

● A principal função dele é ler dados de várias fontes e juntar estas camadas em um arquivo de imagem.

Page 15: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 15/28

O que é uma camada?

● Uma camada pode ser uma imagem de satélite, as fronteiras de um país ou pontos mostrando as maiores cidades.

Page 16: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 16/28

Renderizar?

● O processo de renderizar uma imagem ocorre cada vez que é feito um pedido de novo mapa.

● Mesmo um zoom gera este pedido.

Page 17: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 17/28

Modos de Operação

● CGI – Mapserver funciona dentro de ambiente de Servidor Web como um script CGI.

● Mapscript – A API do Mapserver é acessível por programas em PERL, Python, PHP...

Page 18: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 18/28

Estado

● Mapserver é stateless, isto é, ele não guarda seu estado entre várias chamadas.

Page 19: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 19/28

Mapfile e templates HTML

O mapserver é baseado em templates.

Page 20: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 20/28

Passo 1

1- Quando é chamado, Mapserver lê um arquivo de configuração (mapfile) que descreve as camadas e outros elementos do mapa.

Page 21: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 21/28

Passo 2

2- Ele desenha e salva o mapa.

Page 22: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 22/28

Passo 3

3- Depois, ele lê um ou mais templates em HTML.

Page 23: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 23/28

Passo 4

4- Cada template consiste de algumas tags HTML e informações para o Mapserver inserir sua informações. O Mapserver substitui os valores e devolve ao servidor web.

Page 24: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 24/28

Mapfile

O Mapfile Armazena a configuração usada.Inclui informações sobre 1 – Quais camadas devem ser renderizadas;2 – Onde está o foco geográfico do mapa;3 – Qual projeção está sendo usada;4 – Qual o formato gráfico de saída;5 – Configura o modo como a legenda e a escala

serão usadas.

Page 25: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 25/28

Saída do Mapserver

Não apenas o mapa pode ser gerado. O Mapserver gera também:

● Legendas;● Escalas;● Mapas de referência.

Page 26: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 26/28

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

Page 27: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 27/28

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>

Page 28: Introdução ao Mapserver · Introdução ao Mapserver. SigWeb by João Araujo 2/28 Mapserver ... Windows Mac OS FreeBSD

SigWeb by João Araujo 28/28

FIM