Cartografia

Sådan fungerer Mapserver

Sidste gang talte vi om nogle kriterier hvorfor MapServer og det grundlæggende i installationen. Lad os nu se noget af dets funktion i en øvelse med kortene over Chiapas-vennerne.

 mapserver geoserver hvor den er monteret

Når Apache er installeret, er standard MapServer publiceringsmappen OSGeo4W mappen direkte over C:/

Indeni er der forskellige mapper med applikationer alt efter hvad der er installeret, men mappen til udgivelse skal gå inde i apache. I dette tilfælde mappen kaldet gis.

  • Derefter inde i datamappen indeholder lagene, ortofoto osv.
  • I mappen etc er der de ægte skrifttyper, der bruges til etiketterne, med en .ttf-udvidelse. Her er også en txt-fil, der rejser dem, og en anden, der definerer symboler.
  • Og til sidst i httdocs-mappen er de websider, der starter tjenesten.
  • mapserver geoserver

Websiden

I eksemplet vil jeg bruge casen vist forrige gang. Grundlæggende indeholder den en indeksfil, der omdirigerer til en med en phtml-udvidelse, og dette hæver igen funktionerne bygget på en php og kortene. En mappe indeholder de billeder, der er linket til fra siden.

mapserver geoserver

Hvis du ser på det, er phtml'en bare skal bygget af tabeller, og kalder til mapscript/php funktionerne. Det skal hæves ved hjælp af:

http://localhost/gis/gispalenque.phtml

Nedenfor er arbejdsresultatet:

  • til centret funktionen GMapDrawMap(),
  • til højre opkaldet til keymap GMapDrawKeyMap(),
  • skalalinjen ned GMapDrawScaleBar(),
  • og i tilfælde af displayfunktioner, en betingelse vedrørende listeboksen hvis (!IsHtmlMode()) ekko "  med beslutninger: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.

Kører allerede, skærmen ser sådan ud:

mapserver geoserver

.map-filerne

Kombinationen af ​​Mapserver posten er i det, der er rejst af apache, som sendes til det af php via kortskrift og så kommer det ud af den skal. Men det meste af videnskaben ligger i .map-filerne, ikke at forveksle med dem, der er genereret af Mapinfo, Manifold eller Mobile Mapper Office med samme udvidelse.

Disse .map er tekstfiler, som indeholder kortet i scriptform. Disse kan oprettes med desktop-programmer som Quantum GIS, hvis det er indstillet, er der et til hovedkortet, et til Keymap og to til OGC wms- og wfs-tjenesterne. Lad os se, hvordan mapscript fungerer:

MAP

NAVN PALENQUE_DEMO
STATUS TIL
STØRRELSE 600 450
SYMBOLSET ../etc/symbols.txt
OMFANG 604299 1933386 610503 1939300 #VISNING AF HELE KORTET OVER PALENQUE
#EXTENT 605786 1935102 608000 1938800 # KUN SEKTOR 01
ENHEDSMETER
SHAPEPATH "../data"
TRANSPARENT PÅ
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt

  • MAP angiver, at det starter scriptet
  • STATUS, angiver, om standardkortet er slået til eller ej
  • SIZE er størrelsen på skærmen
  • SYMBOLSET viser symbolernes sti
  • UDVIKLING er koordinaterne for displayet. #-symbolet bruges til at lave anmærkninger.
  • ENHEDER til enheder
  • SHAPEPATH, stien hvor lagene er
  • Alt vil til sidst ende med END-kommandoen

Indeni starter koden med en kommandolinje og slutter med END, for eksempel for minimum og maksimum skala; bibliotek med midlertidige billeder:

WEB
  MINSCALE 2000000
  MAKSSKALA 50000000

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

mapserver geoserverSkalalinjen:

SKALTABEL
  IMAGECOLOR 255 255 255
  LABEL
    FARVE 0 0 0
    STØRRELSE SMALL
  SLUT
  STØRRELSE 300 5
  FARVE 255 255 255
  BAGGRUNDSFARVE 0 0 0
  OUTLINEFARVE 0 0 0
  UNITS kilometer
  INTERVALLER 3
  STATUS TIL
SLUT

mapserver geoserverEt rasterlag: som går i baggrunden, med en beskrivelse på listen som "Ortofoto", fra en tiff placeret i datamappen:

 

 

LAYER
  NAME ortofoto
  METADATA
    "DESCRIPTION" "OrthoPhoto"
  SLUT
  RASTERTYPE
  STATUS FRA
  DATA "C:\OSGeo4W/apps/gis/data/ortofotoGral.tif"
  #OFFSITE 0 0 0
SLUT

Et shp-lag af polygoner, tema baseret på kriterier, hæver nogle data på en html-skabelon, med en sans font-etiket, størrelse 6, sort farve og hvide kanter af buffer 5...

mapserver geoserver

LAYER
  NAVN sektor02Zone
  TYPE POLYGON
  STATUS FRA
  GENNEMSIGTIGHED 50
  EXTENT 607852 1935706 610804 1938807 METADATA
    "BESKRIVELSE" "Tema efter værdisektor 02"
    "RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred prop Area Perimeter VALUE"
  SLUT
  DATA PALENQUE_SECTOR01
  SKABELON "ttt_query.html"
  TOLERANCE 5
  #TOLERANCEENHEDER PIXEL
  LABELITEM "VALUE"
  KLASSEVARE "VÆRDI"
  LABEL CACHE TIL
  KLASSE
    SYMBOL 1
    FARVE 128 128 128
    OUTLINEFARVE 0 0 0
    NAVN "ZoneNULL"
    UDTRYK ([VALUE]=0)
    LABEL
         AUTO VINKEL
         FARVE 0 0 0
         FONT sans
         TYPE ÆGTE TYPE
         POSITION cc
        
DELVIS FALSK
         BUFFER 5
         SIZE 6
         OUTLINEFARVE 200 200 200
    SLUT
  SLUT #klasseværdi 0
  KLASSE
    SYMBOL 3
    FARVE 255 128 128
    #FARVE -1 -1 -1 #INGEN FYLDNING

…. og så videre indtil der lukkes med

SLUT
  SLUT #Klasseværdi
SLUT#Lag

Afslutningsvis

Derfor bliver arbejdet med mapserver, selvom det er ret simpelt, ret komplekst og meget begrænset til store job, fordi alt er i .map. Den største ulempe er, at alt foregår til fods, såsom at definere hver farve i et tema, og af denne grund opstår værktøjer som CartoWeb, som fungerer på Mapserver, men kommer med indbyggede plugins og eksempler med funktioner, der gør denne primitive version forblive uændret. han læs mig først:

  • Arbejd separate rammer med AJAX for at opdatere dem separat
  • Parser koden, så længe et script omskriver .map baseret på parameteriserbare kriterier
  • Gør forskydningen dynamisk uden at kræve en opdatering, som om det var et flashlag
  • Online vektorredigering, øjeblikkelig skrivning over cache
  • Download lag i vektorform
  • Eksporter til Google Earth
  • Generer PDF af implementeringen

I en næste vil vi tage et kig på CartoWeb, her er linket til de vigtigste eksempler.

Golgi Alvarez

Forfatter, forsker, specialist i jordforvaltningsmodeller. Han har deltaget i konceptualisering og implementering af modeller såsom: National System of Property Administration SINAP i Honduras, Model of Management of Joint Municipalities in Honduras, Integrated Model of Cadastre Management - Registry in Nicaragua, System of Administration of the Territory SAT in Colombia . Redaktør af Geofumadas vidensblog siden 2007 og skaberen af ​​AulaGEO Academy, der omfatter mere end 100 kurser om emner GIS - CAD - BIM - Digitale tvillinger.

Relaterede artikler

3 Kommentarer

  1. Hej,

    Jeg forsøger at kalde et lag fra .map, som følger:

    LAYER
    NAME houses_test
    TYPE PUNKT
    TILSLUTNINGSTYPE OGR
    FORBINDELSE #"virtual.ovf"
    "

    xxxxx
    EXEC…….
    eess_id
    wkbPoint
    WGS84

    "

    Mit problem er, at DSN-tjenesten giver problemer: når man anmoder om en GetCapabilities, returnerer den database-adgangskoden... kan jeg ringe til en fil for at undgå at "give væk" adgangskoden eller er det en DSN-fejl???? Tak skal du have!

  2. MapServer er et populært Open Source-projekt, hvis formål er at vise dynamiske rumlige kort over internettet. Et monteret drev er et drev, der er knyttet til en tom mappe på en diskenhed, der bruger NTFS-filsystemet. Monterede drev fungerer som alle andre drev, men de er tildelt drevstier i stedet for drevbogstaver.

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

Tilbage til toppen knap