Cartografia

Como Mapserver funciona

A última vez que falamos sobre porque alguns critérios MapServer e os fundamentos da instalação. Agora vamos ver um pouco de seu funcionamento em um exercício com os mapas dos cuates de Chiapas.

 geoserver mapserver Onde ele monta

Uma vez instalado o Apache, o diretório de publicação MapServer padrão é a pasta OSGeo4W diretamente sobre C: /

Dentro, existem diferentes pastas com aplicativos dependendo do que está instalado, mas a pasta para publicação deve ficar dentro do apache. Neste caso, a pasta chamada gis.

  • Em seguida, no interior da pasta contém camadas de dados, orthophoto, etc.
  • Na pasta etc, estão as fontes true type usadas para os rótulos, com uma extensão .ttf. Também aqui está um arquivo txt que os levanta e outro que define os símbolos.
  • E, finalmente, nos httdocs pasta subir páginas da web que serviço.
  • geoserver mapserver

O website

No exemplo, usarei o caso mostrado da última vez. Ele basicamente contém um arquivo de índice que redireciona para um arquivo com extensão phtml, e isso por sua vez aumenta as funções construídas em cima de um php e dos mapas. Uma pasta contém as imagens vinculadas à página.

geoserver mapserver

Se olharmos para ele, o phtml é apenas o shell construído a partir de tabelas e chamadas para as funções mapscript / php. Você deve se levantar usando:

http://localhost/gis/gispalenque.phtml

Correndo pelo resultado mostrado:

  • centro de função GMapDrawMap (),
  • direito a chamada para mapa de teclas GMapDrawKeyMap (),
  • barra de escala em baixo GMapDrawScaleBar (),
  • e se funções de implantação, uma condição em relação à caixa de listagem if (! IsHtmlMode ()) echo "  com decisões: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.

Já em execução, a tela se parece com isso:

geoserver mapserver

Os arquivos .map

A combinação da publicação do Mapserver é o que o Apache lança, o que envia o php através MapScript e isso então sai dessa casca. Mas a maior parte da ciência está nos arquivos .map, não devem ser confundidos com aqueles gerados pelo Mapinfo, Manifold ou Mobile Mapper Office com a mesma extensão.

Esses .map são arquivos de texto que contêm o mapa na forma de script. Eles podem ser criados com programas de desktop como Quantum GIS, se você notar que há um para o mapa principal, um para o Keymap e dois para os serviços OGC wms e wfs. Vamos ver como o mapscript funciona:

MAPA

NOME PALENQUE_DEMO
STATUS ON
TAMANHO 600 450
symbolset ../etc/symbols.txt
604299 1933386 610503 1939300 extensão de todas mapa #VISTA de Palenque
#EXTENT 605786 1935102 608000 1938800 01 #SOLO DO SETOR
METROS UNIDADES
SHAPEPATH "../data"
ON TRANSPARENTE
IMAGECOLOR 255 255 255
fontset ../etc/fonts.txt

  • MAP indica que inicia o script
  • STATUS indica se o mapa por padrão está ligado ou não
  • TAMANHO é o tamanho de implantação
  • SYMBOLSET mostra o caminho dos símbolos
  • EXTENT são as coordenadas de exibição. O símbolo # é usado para fazer anotações
  • UNIDADES para unidades
  • SHAPEPATH, o caminho onde as camadas são
  • Tudo no final terminará com o comando END

No interior, o código começa com uma linha de comando e termina com END, por exemplo, para escala mínima e máxima; Diretório de imagens temporárias:

WEB
  MINSCALE 2000000
  MAXSCALE 50000000

IMAGEPATH "C: \ OSGeo4W / tmp / ms_tmp /"
  IMAGEURL "/ ms_tmp /"
END

geoserver mapserverA barra de escala:

SCALEBAR
  IMAGECOLOR 255 255 255
  LABEL
    COR 0 0 0
    TAMANHO PEQUENO
  END
  TAMANHO 300 5
  COR 255 255 255
  BACKGROUNDCOLOR 0 0 0
  OUTLINECOLOR 0 0 0
  UNITS quilômetros
  INTERVALOS 3
  STATUS ON
END

geoserver mapserverUma camada raster: que fica em segundo plano, com uma descrição na lista como "Ortofoto", a partir de um tiff localizado na pasta de dados:

 

 

CAMADA
  NOMBRE ortofoto
  METADATA
    "DESCRIÇÃO" "OrtoFoto"
  END
  TYPE RASTER
  ESTADO DESLIGADO
  DATA "C: \ OSGeo4W / apps / gis / data / ortofotoGral.tif"
  #OFFSITE 0 0 0
END

Uma camada shp de polígonos, temáticos com base em critérios, levantando alguns dados em um modelo html, com uma etiqueta sans font, tamanho 6, cor preta e bordas brancas do buffer 5 ...

geoserver mapserver

CAMADA
  NOME setor02Zone
  TYPE POLYGON
  ESTADO DESLIGADO
  TRANSPARÊNCIA 50
  EXTENT 607852 1935706 610804 1938807 METADATA
    "DESCRIÇÃO" "Tema por Setor de Valor 02"
    "RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred prop Area Perimeter VALUE"
  END
  DADOS PALENQUE_SECTOR01
  MODELO "ttt_query.html"
  TOLERÂNCIA 5
  #TOLERANCEUNITS PIXELS
  LABELITEM "VALOR"
  CLASSITEM "VALOR"
  LABELCACHE ON
  CLASSE
    SYMBOL 1
    COR 128 128 128
    OUTLINECOLOR 0 0 0
    NOME "ZonaNULL"
    EXPRESSÃO ([VALOR] = 0)
    LABEL
         ANGLE AUTO
         COR 0 0 0
         FONT sans
         TYPE TRUETYPE
         POSIÇÃO cc
        
PARCIALMENTE FALSO
         BUFFER 5
         6 TAMANHO
         OUTLINECOLOR 200 200 200
    END
  END #class 0 value
  CLASSE
    SYMBOL 3
    COR 255 128 128
    #COLOR -1 -1 -1 #SIN ENCHIMENTO

.... e tão perto

END
  END #Class Value
END # Camada

Em conclusão

Conseqüentemente, trabalhar com mapserver, embora seja bastante simples, torna-se complexo e muito limitado para trabalhos grandes porque tudo está no .map. A maior desvantagem é que tudo é feito a pé, como definir cada cor em um tema, e por isso surgem ferramentas como o CartoWeb, que funciona no Mapserver, mas traz plugins embutidos e exemplos com características que fazem essa versão primitiva parecer a readme primeiro:

  • quadros separados para trabalhar com AJAX, a fim de atualizá-los separadamente
  • Analisando o código, de modo que um script reescrever o .map com base em critérios configuráveis
  • deslocamento para trás dinâmico sem a necessidade de actualização, como se fosse uma camada de flash
  • vector edição on-line, escrever-on de cache
  • camada de descarga em forma de vector
  • Exportar para o Google Earth
  • Implantação Gerar PDF

Em seguida, vamos dar uma olhada CartoWeb, aqui deixo o link para os principais exemplos.

Golgi Álvarez

Escritor, pesquisador, especialista em Modelos de Gestão Territorial. Participou da conceituação e implementação de modelos como: Sistema Nacional de Administração de Propriedades SINAP em Honduras, Modelo de Gestão de Municípios Conjuntos em Honduras, Modelo Integrado de Gestão de Cadastro - Cadastro na Nicarágua, Sistema de Administração do Território SAT na Colômbia . Editor do blog de conhecimento Geofumadas desde 2007 e criador da Academia AulaGEO que inclui mais de 100 cursos sobre temas GIS - CAD - BIM - Digital Twins.

Artigos Relacionados

3 Comentários

  1. Olá,

    Eu estou tentando chamar uma camada do .map da seguinte forma:

    CAMADA
    casas_prueba NOME
    PONTO DE TIPO
    ConnectionType OGR
    CONEXÃO #”virtual.ovf”
    "

    xxxxx
    EXE…….
    Eess_id
    WkbPoint
    WGS84

    "

    Meu problema é que o serviço DSN está causando problemas: ao solicitar um GetCapabilities ele está retornando a senha do banco de dados... posso fazer uma chamada para um arquivo para evitar "dar" a senha ou é um erro de DSN???? Obrigado!

  2. O MapServer é um popular projeto Open Source cujo objetivo é exibir mapas espaciais dinâmicos pela Internet. Uma unidade montada é uma unidade que é mapeada para uma pasta vazia em um volume que usa o sistema de arquivos NTFS. As unidades montadas funcionam como qualquer outra unidade, mas são atribuídos caminhos de unidade em vez de letras de unidade.

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

Voltar ao topo botão