Nola funtzionatzen duen Mapserver
Aurretik aipatu ditugun irizpide batzuei buruz hitz egin genuen MapServer eta instalazioaren oinarriak. Ikus dezagun Chiapaseko lagunen mapekin egindako ariketa batean bere funtzionamenduko zerbait.
Non muntatzen den
Apache behin instalatuta dagoenean, MapServer-en argitalpenen direktorio lehenetsia OSGeo4W karpeta zuzenean C: /
Barruan, instalatutakoaren arabera karpeta desberdinak daude aplikazioekin, baina argitaratzeko karpetak apache barruan sartu behar du. Kasu honetan gis izeneko karpeta.
- Gero barrutik, datuen kartak geruzak, ortoargazkiak eta abar ditu.
- Etc karpetan, etiketetarako erabilitako benetako letra tipoak daude .ttf luzapenarekin. Hemen ere altxatzen dituen txt fitxategi bat eta sinboloak definitzen dituen beste bat daude.
- Eta, azkenik, httdocs karpetan, zerbitzua igotzen duten web orriak.
Web orria
Adibidean, azken aldian erakutsitako kasua erabiliko dut. Funtsean, phtml luzapena duen beste batera birbideratzen duen aurkibide fitxategi bat dauka, eta honek php baten gainean eta mapen gainean eraikitako funtzioak goratzen ditu. Karpeta batek orrialdetik estekatutako irudiak biltzen ditu.
Begiratzen badiogu, phtml tauletatik sortutako shell-a besterik ez da, eta mapscript / php funtzioetara deitzen du. Honako hau erabiliz jaiki beharko zenuke:
http://localhost/gis/gispalenque.phtml
Behean emaitza da:
- erdian funtzioa GMapDrawMap (),
- eskuinera deitzeko maparen tekla GMapDrawKeyMap (),
- beheko eskala-barra GMapDrawScaleBar (),
- eta inplementazio funtzioen kasuan, listbox-en inguruko baldintza if (! IsHtmlMode ()) oihartzuna " erabakiak hartuta: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.
Dagoeneko martxan, hedapena honen itxura da:
.map fitxategiak
Mapserver-en argitalpenen konbinazioa zer da Apache-k, php-a bidaltzen duena mapscript eta hori gero maskor horren bidez ateratzen da. Baina zientzia gehiena .map fitxategietan dago, ez da nahastu behar Mapinfo, Manifold edo Mobile Mapper Office-k sortutakoekin luzapen bera dutenekin.
.Map hauek testu-fitxategiak dira, mapa script moduan dutenak. Hauek Quantum GIS bezalako mahaigaineko programekin sor daitezke, ohartzen bazara bat badagoela mapa nagusirako, beste bat Keymaperako eta bi OGC wms eta wfs zerbitzuetarako. Ikus dezagun mapscript-ek nola funtzionatzen duen:
MAPA
NAME PALENQUE_DEMO
ESTATUA
SIZE 600 450
SYMBOLSET ../etc/symbols.txt
604299 1933386 610503 1939300 EXTENTA # PALENQUEKO MAPA GUZTIA ORDEZKARITZA
#EXTENT 605786 1935102 608000 1938800 #SOLO 01 SEKTOREA
UNITATEAK METARAK
SHAPEPATH "../data"
TRANSPARENTE ON
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt
- MAPA hasierako script-a adierazten du
- ESTATUA, mapa lehenetsia dagoen ala ez adierazten du
- SIZE pantailaren tamaina da
- SYMBOLSET ikurren bidea erakusten du
- BALDINTZA bistaratzeko koordenatuak dira. # Ikurra oharpenak egiteko erabiltzen da
- Unitateak UNITS
- SHAPEPATH, geruzak non dauden
- Azkenean dena amaitzeko END aginduarekin amaituko da
Barruan, kodea komando-lerro batekin hasten da eta END-ekin amaitzen da, adibidez, gutxieneko eta gehieneko eskalarako; aldi baterako irudien direktorioa:
WEB
MINSCALE 2000000
MAXSCALE 50000000IMAGEPATH "C: OSGeo4W / tmp / ms_tmp /"
IMAGEURL "/ ms_tmp /"
END
Eskala-barra:
Scalebar
IMAGECOLOR 255 255 255
LABEL
Kolorea 0 0 0
tamaina txikia
END
SIZE 300 5
Kolorea 255 255 255
BACKGROUNDCOLOR 0 0 0
OUTLINECOLOR 0 0 0
UNITS kilometro
INTERVALS 3
ESTATUA
END
Raster geruza: atzeko planoan, zerrendan "Ortofotoa" izenarekin deskribatuta, datu karpetan kokatutako tiff batetik:
GERUZA
NAME ortoargazkia
METADATA
"DESKRIBAPENA" "OrtoFoto"
END
TYPE RASTER
ESTATUAREN DESKARGA
DATUAK "C: OSGeo4W / apps / gis / data / ortofotoGral.tif"
#OFFSITE 0 0 0
END
geruza shp poligono tematizada oinarritutako irizpideen arabera, datu batzuk HTML txantiloi bat etiketa sans-tipo batekin altxatuz, tamaina 6, ertz zuri-beltzean buffer 5 ...
GERUZA
NAME sektorearentzako 02Zone
TYPE POLYGON
ESTATUAREN DESKARGA
TRANSPARENCY 50
HEDAGARRIA 607852 1935706 610804 1938807 METADATA
"DESKRIBAPENA" "Gaia 02 sektore balioaren arabera"
"RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred prop Area perimetroaren BALIOA"
END
DATUAK PALENQUE_SECTOR01
TEMPLATE "ttt_query.html"
TOLERANCE 5
#TOLERANCEUNITS PIXELS
LABELITEM "VALOR"
"VALOR" klasea
LABELCACHE ON
CLASS
SYMBOL 1
Kolorea 128 128 128
OUTLINECOLOR 0 0 0
NAME "ZoneNULL"
EXPRESSION ([VALUE] = 0)
LABEL
ANGLE AUTO
Kolorea 0 0 0
FONT sans
TYPE TRUETYPE
POSIZIOA cc
PARTIALAK FALTSUA
BUFFER 5
SIZE 6
OUTLINECOLOR 200 200 200
END
END #class 0 balioa
CLASS
SYMBOL 3
Kolorea 255 128 128
#COLOR -1 -1 -1 #SIN FILLING
.... eta, beraz, itxi
END
END # Klasearen balioa
END # geruza
Ospakizuna
Hori dela eta, mapserver-rekin lan egitea, nahiko erraza den arren, konplexua eta oso mugatua bihurtzen da lan handietarako, guztia .map-en dagoelako. Desabantaila handiena da dena oinez egiten dela, hala nola kolore bakoitza gaikako batean definitzea, eta horregatik sortzen dira CartoWeb bezalako tresnak, Mapserver-en funtzionatzen duena baina bertsio primitibo hau itxura ematen duten ezaugarriak dituzten plugin integratuak eta adibideak ekartzen dituena. du Irakurri lehen:
- Laneko marko bereiziak, AJAX-ekin, banan-banan freskatu ahal izateko
- Parekatzeko kodea, script-ak berridatzi du .map irizpide parametroetan oinarrituta
- Atzera dinamikoa korritze freskura beharrik gabe, flash geruza izan balitz bezala
- Online bidezko edizioa, berehalako cachea idaztea
- Deskargatu geruza bektore moduan
- Esportatu Google Earth-ra
- Sortu PDFa desplazamenduan
Hurrengo batean CartoWeb begirada bat hartuko dugu, hemen adibide nagusien esteka utziko dut.
Badira phtml txantiloien irteera estandarra izateko modua, eskerrak
Kaixo,
Maila honetatik ateratako geruza bati deitzen saiatzen naiz honela:
GERUZA
NAME test_houses
TYPE POINT
CONNECTIONTYPE OGR
KONEXIOA #”virtual.ovf”
"
xxxxx
EXEC…….
eess_id
wkbPoint
WGS84
"
Nire arazoa da DSN zerbitzuak arazoak sortzen dituela: GetCapabilities bat eskatzerakoan datu-basearen pasahitza itzultzen ari da... dei bat egin dezaket fitxategi batera pasahitza "eman" saihesteko ala DSN akatsa da???? Eskerrik asko!
MapServer Open Source proiektu ezagun bat da. Horren helburua da espazialen mapak dinamikoak izatea Internet bidez. Muntatutako unitatea NTFS fitxategi-sistema erabiltzen duen bolumen batean karpeta huts bat mapan dagoen disko bat da. Muntatutako unitateak beste edozein unitate bezala funtzionatzen dute, baina disko-bideak esleitzen zaizkie unitate hizkiekin.