Nächste Seite: ,,Layer für Rasterdaten
Aufwärts: Erstellung der MapServer -
Vorherige Seite: demo_init.html
  Inhalt
  Index
Weiter wird eine Datei
demo_header.html benötigt, die aber
nur den Text der Kopfzeile und die Grundfarbe zu generierenden
Webseite enthält. Entsprechend kurz ist der eigentliche Text
der Datei.
freegis@xml-2:/usr/local/httpd/htdocs/mapserver/ms_demo > cat demo_header.html
<html>
<head><title>MapServer Demo Interface</title></head>
<body bgcolor=#FFFFFF>
|
|
Die wichtigeren Dateien sind die demo.html in der das
eigentliche Aussehen der Webseite beschrieben wird und die demo.map die die Verbindungen zu den darzustellenden Daten
definiert. Zuerst die demo.html die ein Template also
ein Muster oder eine Schablone der Webseite beinhaltet.
freegis@xml-2:/usr/local/httpd/htdocs/mapserver/ms_demo > cat demo.html
<html>
<head><title>MapServer Demo Interface</title></head>
<body bgcolor=#FFFFFF>
<center><h1>MapServer Demo Interface</h1></center>
<hr>
<form method=GET action="/cgi-bin/mapserver/mapserv">
<center>
<table border=2 cellpadding=10 width=100%>
<tr>
<td align=center>
<INPUT NAME="img" TYPE="image" SRC="[img]" width=600 height=600></A><p>
<img src="[scalebar]">
</td>
<td>
<input type="submit" value="Refresh/Query"><p>
<input type="radio" name="mode" value="browse" checked>
<b>Browse map</b><br>
<input type="radio" name="mode" value="query"> <b>Query feature</b><br>
<input type="radio" name="mode" value="nquery">
<b>Query multiple features</b>
<hr>
<center><a href="/scripts/mapserv?map=[map]&mapext=
[minx]+[miny]+[maxx]+[maxy]
&mode=nquery&[get_layers]">summarize</a></center>
<hr>
<p>
<b>Select Layers to Display: </b><br>
<select multiple name="layer" size=3>
<option value="crater" [crater_select]> Craterlake
<option value="craterluft" [craterluft_select]> Craterluft
<option value="contour" [contour_select]> Cratercontour
<option value="road" [road_select]> Road
<option value="boundaryline" [boundaryline_select]> Boundaryline
<option value="boundarypolyline" [boundarypolyline_select]>
Boundarypolyline
</select>
|
|
<p>
Zoom In <input type=radio name=zoomdir value=1 [zoomdir_1_check]>
Pan <input type=radio name=zoomdir value=0 [zoomdir_0_check]>
Zoom Out <input type=radio name=zoomdir value=-1 [zoomdir_-1_check]>
<p>
Zoom Size <input type=text name=zoomsize size=4 value=[zoomsize]>
<p>
<font size=+1><b>Legend</b></font><br><hr>
<img src="[legend]"><hr>
<p>
<INPUT NAME="ref" TYPE="image" SRC="[ref]" border="0"></A><p>
</td>
</tr>
</table>
</center>
<input type="hidden" name="imgxy" value="299.5 299.5">
<input type="hidden" name="imgext" value="[mapext]">
<input type="hidden" name="map" value="[map]">
</form>
<p><hr><p>
</body></html>
freegis@xml-2:/usr/local/httpd/htdocs/mapserver/ms_demo >
|
|
Jede einzelne Zeile erklären zu wollen, würde den Rahmen diese
Kapitels sicherlich sprengen, deshalb gehe ich nur auf die Zeilen
ein, deren Editierung mir für diese MapServer Anwendung wichtig
erscheinen. Zu nennen wären hier:
<option value="crater" [crater_select]> Craterlake
|
|
Mit dieser Zeile wird ein ``Layer aus der demo.map Datei
angegeben dessen Darstellung in Mapserver angewählt werden kann.
Das ,,crater ist hierbei der Name des ,,Layers während
,,Craterlake der in MapServer erscheinende Name im Auswahlmenü
ist. Betrachtet man die Datei demo.html im Browser ohne Bearbeitung
durch das cgi - Skript, sähe sie so aus (Abb. 14.6).
Um diese leere Schablone nun mit Daten zu füllen, wird vom Webserver,
oder besser vom cgi - Skript, das der Webserver ausführt, die Datei
demo.map gelesen und die dort angegebenen Daten in die demo.html eingetragen. Die demo.html für dieses Beispiel
sieht folgendermaßen aus:
Abbildung 14.6:
Ausgabe der demo.html Datei im Webserver
|
freegis@xml-2:/usr/local/httpd/htdocs/mapserver/ms_demo > cat demo.map
# Start of map file
NAME DEMO
STATUS ON
SIZE 600 600
IMAGETYPE PNG
EXTENT 550840.000000 4733028.000000 592070.000000 4775095.000000
UNITS METERS
SHAPEPATH "/usr/local/httpd/htdocs/mapserver/ms_demo/data/"
IMAGECOLOR 255 255 255
#LABELOVERLAP FALSE
# Start of web interface definition
WEB
HEADER demo_header.html
TEMPLATE demo.html
MINSCALE 100
MAXSCALE 1550000
IMAGEPATH "/usr/local/httpd/htdocs/mapserver/tmp/"
IMAGEURL "/mapserver/tmp/"
LOG "/tmp/mapserver.log"
END
|
|
# Start of reference map
REFERENCE
IMAGE graphics/karte.png
EXTENT 550840.000000 4733028.000000 592070.000000 4775095.000000
SIZE 169 172
STATUS ON
COLOR -1 -1 -1
OUTLINECOLOR 255 0 0
END
# Start of legend
LEGEND
KEYSIZE 18 12
LABEL
TYPE BITMAP
SIZE MEDIUM
COLOR 0 0 89
END
STATUS ON
END
# Start of scalebar
SCALEBAR
IMAGECOLOR 255 255 255
LABEL
COLOR 0 0 0
SIZE SMALL
END
SIZE 350 5
COLOR 255 255 255
BACKGROUNDCOLOR 0 0 0
OUTLINECOLOR 0 0 0
UNITS KILOMETERS
INTERVALS 5
STATUS ON
END
|
|
# Start of layer definitions
LAYER
NAME karte
TYPE RASTER
STATUS ON
DATA karte.tif
OFFSITE 0
END#LAYER
LAYER
NAME road
TYPE LINE
STATUS ON
DATA roadsl
CLASS
NAME "Road"
COLOR 255 0 0
END
END # Layer
END # Map File
freegis@xml-2:/usr/local/httpd/htdocs/mapserver/ms_demo >
|
|
Nächste Seite: ,,Layer für Rasterdaten
Aufwärts: Erstellung der MapServer -
Vorherige Seite: demo_init.html
  Inhalt
  Index
Heiko Kehlenbrink
2002-01-30