Kot del Mapserver
Nazadnje, ko smo se pogovarjali o tem, zakaj nekaterih merilih Mapserver in osnove namestitve. Zdaj pa si oglejmo nekaj njegovega delovanja v vaji z zemljevidi prijateljev iz Chiapasa.
Kje je nameščen
Ko je Apache nameščen, je privzeti imenik za izdajo MapServer mapa OSGeo4W neposredno nad C: /
V njej so različne mape z aplikacijami, odvisno od tega, kaj je nameščeno, vendar mora biti mapa za objavo v apacheu. V tem primeru je mapa z imenom gis.
- Nato v notranjosti podatkovna mapa vsebuje plasti, ortofoto itd.
- V mapi etc so pisave pravega tipa, ki se uporabljajo za nalepke s pripono .ttf. Tu je tudi datoteka txt, ki jih dvigne, in druga, ki določa simbole.
- In nazadnje v mapi httdocs gredo na spletne strani, ki dvignejo storitev.
Spletna stran
V primeru bom uporabil zadnjič prikazan primer. V bistvu vsebuje indeksno datoteko, ki preusmeri na tisto s pripono phtml, to pa dvigne funkcije, zgrajene na vrhu php in zemljevidov. Mapa vsebuje slike, povezane s strani.
Če ga pogledamo, je phtml le lupina, zgrajena iz tabel, in kliče funkcije mapscript / php. Moral bi vstati z uporabo:
http://localhost/gis/gispalenque.phtml
Spodaj je rezultat:
- na sredino funkcije GMapDrawMap (),
- na desni klic do tipkovnica GMapDrawKeyMap (),
- lestvico skale spodaj GMapDrawScaleBar (),
- in pri funkcijah uvajanja, pogoj glede na seznam seznamov if (! IsHtmlMode ()) echo " z odločitvami: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.
Razvija se tako, kot se že izvaja:
Datoteke .map
Kombinacija publikacije Mapserver je v tem, kar Apache postavlja, ki pošilja php skozi mapografija in to potem pride ven skozi to lupino. Toda večina znanosti je v datotekah .map, ki je ne gre zamenjati s tistimi, ki jih ustvarijo Mapinfo, Manifold ali Mobile Mapper Office z enako pripono.
Te .map so besedilne datoteke, ki vsebujejo zemljevid v obliki skripta. Te je mogoče ustvariti z namiznimi programi, kot je Quantum GIS, če opazite, da obstaja en za glavni zemljevid, eden za zemljevid tipk in dva za storitve wms in wfs OGC. Poglejmo, kako deluje mapscript:
MAP
NAME PALENQUE_DEMO
STATUS ON
SIZE 600 450
SYMBOLSET ../etc/symbols.txt
EXTENT 604299 1933386 610503 1939300 #LIST VSE KARTE PALENKE
#EXTENT 605786 1935102 608000 1938800 #SOLO SEKTOR 01
METODE ENOT
SHAPEPATH "../data"
TRANSPARENTNO
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt
- MAP označuje začetni skript
- STATUS, označuje ali je privzeti zemljevid vklopljen ali ne
- SIZE je velikost zaslona
- SYMBOLSET prikazuje pot simbolov
- EXTENT so prikazne koordinate. Simbol # se uporablja za ustvarjanje pripisov
- ENOTE za enote
- SHAPEPATH, pot, kjer so plasti
- Vse na koncu se konča z ukazom END
V notranjosti se koda začne z ukazno vrstico in konča z END, na primer za najmanjšo in največjo lestvico; imenik začasnih slik:
WEB
MINSCALE 2000000
MAXSCALE 50000000IMAGEPATH "C: OSGeo4W / tmp / ms_tmp /"
IMAGEURL "/ ms_tmp /"
KONEC
Orodna vrstica:
SCALEBAR
IMAGECOLOR 255 255 255
NALEPKA
BARVA 0 0 0
SIZE SMALL
KONEC
SIZE 300 5
BARVA 255 255 255
BACKGROUNDCOLOR 0 0 0
OUTLINECOLOR 0 0 0
UNITS kilometrov
INTERVALI 3
STATUS ON
KONEC
Rasterska plast: gre v ozadju, z opisom na seznamu kot "Orthophoto", iz tifa v podatkovni mapi:
LAYER
NAME ortofoto
METADATA
"DESCRIPTION" "OrtoFoto"
KONEC
TIP RASTER
STATUS OFF
PODATKI "C: OSGeo4W / apps / gis / data / orthophotoGral.tif"
#OFFSITE 0 0 0
KONEC
Plast SHP poligon tematizada na podlagi meril, dvig nekaj podatkov o predlogo HTML z pisavi sans etikete, velikost 6, črni in beli robovi buffer 5 ...
LAYER
NAME sektor02Zone
TIP POLYGON
STATUS OFF
PREGLEDNOST 50
EXTENT 607852 1935706 610804 1938807 METADATA
"OPIS" "Tema po vrednostnem sektorju 02"
"RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred oporni območni obseg VALUE"
KONEC
DATA PALENQUE_SECTOR01
TEMPLATE »ttt_query.html«
TOLERANCIJA 5
#TOLERANCEUNITS PIXELS
LABELITEM "VALUE"
CLASSITEM "VALUE"
LABELCACHE ON
CLASS
SYMBOL 1
BARVA 128 128 128
OUTLINECOLOR 0 0 0
NAME »ZonaNULL«
IZRAŽANJE ([VALUE] = 0)
NALEPKA
ANGLE AUTO
BARVA 0 0 0
FONT sans
TYPE TRUETYPE
POLICIJA cc
DELI FALSE
BUFFER 5
VELIKOST 6
OUTLINECOLOR 200 200 200
KONEC
END #class vrednost 0
CLASS
SYMBOL 3
BARVA 255 128 128
#COLOR -1 -1 -1 #PLAČENJE
.... in tako zapreti
KONEC
END #Class Value
END # Layer
Za zaključek
Zato je delo s strežnikom map, čeprav je zelo preprosto, zapleteno in zelo omejeno za velika dela, ker je vse v .map. Največja pomanjkljivost je, da se vse naredi peš, na primer definiranje posamezne barve v temi, zato se pojavijo orodja, kot je CartoWeb, ki deluje na Mapserverju, vendar prinaša vgrajene vtičnike in primere z značilnostmi, zaradi katerih je videti ta primitivna različica Najprej preberite:
- Delo ločene okvirje, z AJAX, da jih osvežite ločeno
- Razdeli kodo, dokler skript prepisuje .map na podlagi parametrizabilnih meril
- Dinamično pomikanje po hrbtni strani, ne da bi bilo treba osvežiti, kot da bi bila bliskovna plast
- Spletno urejanje vektorjev, takojšnje pisanje predpomnilnika
- Prenesite plast v vektorski obliki
- Izvozi v Google Zemljo
- Ustvari PDF iz uvajanja
V naslednjem bomo pogledali CartoWeb, tukaj pa puščam povezavo do glavnih primerov.
Obstaja način, da imajo standardne izhodne vrednosti phtml, hvala
Pozdravljeni,
Poskušam poklicati sloj iz .map, kot sledi:
LAYER
NAME test_house
VRSTA TIPA
CONNECTTYPE OGR
POVEZAVA #”virtual.ovf”
"
xxxxx
EXEC ......
eess_id
wkbPoint
WGS84
"
Moja težava je v tem, da storitev DSN povzroča težave: ko zahteva GetCapabilities, vrne geslo baze podatkov... ali lahko pokličem datoteko, da se izognem "podavanju" gesla ali je to napaka DSN???? Hvala!
MapServer je priljubljen Open Source projekt, katerega namen je prikazati dinamične prostorske zemljevide preko interneta. Vgrajeni pogon je pogon, ki se preslika v prazno mapo na nosilcu, ki uporablja datotečni sistem NTFS. Vgrajeni pogoni delujejo kot vsi drugi pogoni, vendar so jim dodeljene poti pogona namesto pogonskih črk.