LEHRVERANSTALTUNG: Kartenverwandte Ausdrucksformen LV NR.: 290225 WS 2011 LV LEITER: Ass. Prof. Mag. Dr. Karel Kriz Mag. Michael Heuberger Programm 1 PHP Programmierung Rasterbildmanipulation DHM Klassifizierung und kartographische Aufbereitung (großer und kleiner Maßstab) Dokumentation VERFASSERIN: Katharina Rainer, 0516297
Aufgabenstellung Im Zuge des ersten Programmes der Lehrveranstaltung Kartenverwandte Ausdrucksformen des Instituts für Geographie und Regionalforschung Fachbereich Kartographie und Geoinformation der Universität Wien, sollten von den Teilnehmern zwei Farboverlays erzeugt werden. Die dargestellten Gebiete konnten frei gewählt werden, sollte aber sowohl einen groß als auch ein kleinmaßstäbigen Bereich abdecken. Von den Lehrveranstaltungsleitern wurde ein php Skript zur Verfügung gestellt, welches für die Umsetzung dieses Programmes als Grundlage dient. Datengrundlage Norwegen (kleinmaßstäbiger Bereich): Von der Homepage des USGS (US Geological Survey) wurden die GTOPO30 Daten für jenes Gebiet geladen, das den kleinmaßstäbigen Bereich abdecken soll. Für den Bereich Europa steht unter anderem die Kachel (w020n90) zur Verfügung. (Diese ist unter folgendem Link abrufbar: http://eros.usgs.gov/#/find_data/products_and_data_available/gtopo30/w020n90) Abb.1: GTOPO30 Kachel (w020n90) Abb. 2: ursprüngliche Daten 2
Für die weitere Bearbeitung müssen die heruntergeladenen Daten noch ein wenig aufbereitet werden, d.h. alle Dateinamen (inkl. Erweiterungen) in Kleinbuchstaben und die Dateierweiterung *.dem in *.bil ändern. Abb.3: Daten nach der Bearbeitung In weiterer Folge musste nun der relevante Bereich festgelegt werden. Auf Grund persönlicher Interessen für die Naturlandschaft Skandinaviens wurde die Auswahl auf den Bereich Südnorwegen festgelegt. Um nun den gewünschten Bereich zu erhalten wurde die Kachel in ArcGIS10 importiert und mit Hilfe der Funktion Clip und der Bereich von Südnorwegen extrahiert. Anschließend wurde dieser Raster in ein ASCII File konvertiert. Hoher Dachstein (großmaßstäbiger Bereich): Für den großmaßstäbigen Bereich fiel die Wahl auf den Bereich des Hohen Dachsteins. Die notwendigen Daten wurden über http://warehouse.geo.univie.ac.at/geodaten bezogen. Hierbei kann schon bei der Bestellung der gewünschte Bereich angegeben werden, somit wurde der Extent folgendermaßen gewählt: 13.560W, 13.650E, 47.450S, 47.510N. Analog zu den Daten für Norwegen wurde auch dieses File in ArcGIS10 in ein ASCII File konvertiert. Abb. 4: Hoher Dachstein 3
php Skript Im nun folgenden Teil dieser Dokumentation werden nun die einzelnen Teile des php Skripts (am Beispiel des Skripts dem_analyzer_norwegen.php) erklärt. Aus Gründen der besseren Übersicht und des Verständnisses werden am Beginn jedes Blockes Kommenatare gesetzt. Diese heben sich deutlich durch die grüne Beschriftung und das zu Beginn der Zeile stehende Raute Zeichen (#) hervor. (Die Erläuterung erfolgt immer im Anschluss auf den Screenshot des Skript Blockes) Starten von php und festlegen, dass es ein unbegrenztes Zeitlimit und ein Speicherlimit von 2048 MB gibt. Es erfolgt eine Auflistung aller Dateien im Verzeichnis und im Echo die Aufforderung, dass das gewünschte File, das für die Erstellung der Rasterbildmanipulation in Frage kommt, über die Tastatur (standard input) eingeben werden soll. 4
Ist das eingegebene File in dem Ordner nicht vorhanden (bzw. die Eingabe nicht korrekt), dann erscheint eine (Fehler)Meldung, dass diese Datei nicht vorhanden ist und das Programm wird beendet. Andernfalls, also wenn das File erkannt wird, dann wird das Programm weiter ausgeführt. Nun wird die Anzahl der Zeilen zuerst ermittelt und anschließend als Echo Befehl ausgegeben. Die ersten 6 Zeilen des Headers (ncols nrows xllcorner yllcorner cellsize NODATA_value) werden als Schleife ausgegeben und mit dem Befehl explode voneinander getrennt. Diese Informationen werden nun in ein assoziatives Array geschrieben. 5
Alle Höhenwerte aus dem Inputfile werden ausgegeben. Die Werte einer Zeile werden wieder mit dem explode Befehl voneinander getrennt und in ein zweidimensioneles Array geschrieben. Nun erfolgt die Ausgabe des Minimal und Maximalwertes der Datei (in diesem Fall der Höhenangaben). 6
Zuerst erfolgt die Einteilung der 10 Höhenklassen um die einzelnen Höhenwerte diesen Klassen zuordnen zu können und um die entsprechenden Farbwerte zu vergeben. Des Weiteren werden die unterschiedlichen 11 Farbwerte (RGB Werte) definiert. (Diese wurden aus einer gescannten Nordeuropa Karte vom Schulatlas von Westermann entnommen.) 7
Die Hintergrundfarbe wird auf weiß festgelegt und anschließend den Pixeln (also den Höhenwerten) die zuvor definierten Farbwerte zugewiesen. Erstellung einer Datei (random) mit der Dateiendung.png im aktuellen Verzeichnis. 8
Das Worldfile wird erstellt, wobei dessen Informationen aus dem Headerzeilen entnommen werden. Das Ende des Programms wird als echo Befehl ausgegeben und alle leeren Werte (blankvalues) werden aus dem Array gelöscht. 9
Ergebnisse Anschließend befinden sich die beiden Ergebnisbilder. Hier wird selbstverständlich nur eine verkleinerte Version dargestellt. Die Originaldateien können von der persönlichen Homepage heruntergeladen werden. Abb.5: Farboverlay Süd Norwegen Abb.6: Farboverlay Dachstein 10