
\chapter{Digitales H"ohenmodell des United States Geological
Survey (USGS) importieren.}
\label{import_usgs_dem_de}
\subsubsection{Aufgabenstellung}
Das USGS h"alt Digitale H"ohenmodelle (digital elevation models) in
den Maßstäben \begin{math} 1:250.000 \end{math} und  \begin{math}
1:24.000 \end{math} zum Herunterladen vor
\footnote{http://edcwww.cr.usgs.gov/doc/edchome/ndcdb/ndcdb.html}.
Diese H"ohenmodelle sind im SDTS
\footnote{http://mcmcweb.er.usgs.gov/sdts/}(Spatial Data Transfer
Standard) gespeichert.\index{SDTS}  Dieses Format
wurde speziell zum verlustfreien Austausch von Georeferenzierten
Daten zwischen verschiedenen Computersystemen geschaffen.  Viele
Programme zum Betrachten und Bearbeiten von Höhenmodellen arbeiten
noch mit dem Vorgängerformat, dem sogenannten USGS ASCI Format.
Programme zum konvertieren von SDTS in das USGS ASCI Format k"onnen
bei \footnote{http://geopotential.com/docs/sdts2dem/sdts2dem.html}
heruntergeladen werden.  Im Folgenden wird das Importieren eines
USGS ASCI formatierten H"ohenmodelles beschrieben.
\nomenclature{SDTS}{leer}

\subsubsection{Beispieldaten}
Die hier verwendeten Beispieldaten hält das USGS in dem sogenannten 
"`Crater Lake Data Clearinghouse"'\footnote{http://craterlake.wr.usgs.gov/intro.html}i
zusammen mit einer Menge an zus"atzlichen Informationen, (Metadaten)
"uber diesen Nationalpark der USA zum herunterladen vor.
Unter anderem sind dort Daten "uber die Geomorphologie, "Okologie,
Kulturgeschichte und vieles mehr gespeichert.

\subsubsection{Weitere Verwendung der Beispieldaten}
 Die ab Seite \pageref{import_usgs_dem_de:grass} ff bearbeiteten Daten werden in den folgend aufgez"ahlten Kapiteln benutzt:

\begin{itemize}
\item Kapitel \ref{computing_contur_lines_de} Seite
\pageref{computing_contur_lines_de:grass} ff.
\item Kapitel \ref{flood_model_de} Seite
\pageref{flood_model_de:grass} ff.
\item Kapitel \ref{georeferencing_de} Seite
\pageref{georeferencing_de:grass} ff.
\item Kapitel \ref{computing_volumina_de} Seite
\pageref{computing_volumina_de:grass} ff.
\item Kapitel \ref{fly_over_dem_de} Seite
\pageref{fly_over_dem_de:grass} ff.
\item Kapitel \ref{web_mapping_de} Seite
\pageref{web_mapping_de:mapserver} ff.



\end{itemize}



 \section{Lösung mit g3DGMV (3D Graphical Map Viewer)} \index{g3DGMV}
  \label{import_usgs_dem_de:g3dgmv}
    Es wurde die Version 0.60 von g3DGMV auf einer Windows 2000 Installation
    verwendet.\\

   
    Die Bedienung von g3DGMV erfolgt durch die aufgerufene GUI.
    Wie die aktuelle Versionsnummer (0.60) vermuten l"asst sind
    noch nicht alle Features implementiert, aber eine grundlegende
    Betrachtung und Bearbeitung von Höhenmodellen ist möglich.\\
    Die Schaltfläche {\em File} "offnet ein Men"u zur Auswahl der
    gew"unschten Datei (Abb. \ref{g3dgmv_1}). Ein Mausklick auf den
    Reiter {\em Map Viewer} öffnet einen Betrachtungsmonitor. Ein
    rechter Mausklick in den Monitor ruft ein Auswahlmen"u zur
    Bearbeitung des H"ohenmodelles auf. Hier kann z.B. zwischen
    einer 2D- und 3D-Ansicht, {\em Position Default} und {\em Position
    Rotated}, umgeschaltet werden. Die Men"uauswahl {\em Map Line}
    erzeugt eine Linienansicht des 3D-Modelles. Mit {\em Rotate Map} kann
    man das Modell um alle 3 Achsen drehen. Die Ausgangsposition
    erreicht man mit {\em Default Map}. Die Farbe und die
    Koordinaten eines angewählten Punktes können mit {\em Pick Color}
    und {\em Find Position} ermittelt werden. Durch {\em Rotate Wire
    Frames} wird ein Ausschnitt des DEM als drehbares Drahtgittermodell erzeugt,
    {\em Move Wire Frame} verschiebt den Auschnitt im Fenster.
    {\em Tools} "offnet ein Men"u mit Werkzeugen zur Bildbearbeitung.
    Eine erzeugte Ansicht kann mit {\em Save} als PNG-Datei gespeichert werden.

 \paragraph{Tipps:}
     \begin{itemize}
     \item Bei einer deutsch lokalisierten Linux-Installation muss vor
     dem eigentlichen
           Programmaufruf ein {\em export LC\_ALL=en} erfolgen,
	   um die benutzte Shell anzuweisen, Punkte anstatt Kommata
	   als Dezimaltrenner aufzufassen.
     \end{itemize}

       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/g3DGMV-1.eps}
       \caption[Screenshoot g3DGMV]{\label{g3dgmv_1}Ausgabebildschirm mit
        importiertem USGS Modell "`Abbott Butte, Oregon"'}
       \end{figure}


 \section{L"osung mit VTBUILDER} \index{VTBUILDER}
\label{import_usgs_dem_de:vtbuilder}
Es wurde eine Windows 2000 Installation verwendet.\\


Das Programm VTBUILDER ist eine Application des Virtual Terrain
  Project (VTP)\footnote{www.vterrain.org}. Neben dem reinen
  Darstellen von DEMs (Abb. \ref{vtbuilder_1}) mittels {\em
  Layer/Import Data} und der Auswahl {\em Elevation} kann VTBUILDER
  unter anderem geographische und UTM Koordinaten wechselseitig
  konvertieren und so gemeinsam darstellen. Auch Koordinaten
  verschiedenen Datums werden zusammen verarbeitet. VTBUILDER kann
  eine Vielzahl von DEM - Dateitypen lesen, z.B.:USGS ASCII DEM,
  SDTS DEM, DTED, GTOPO30, CDF, Surfer GRD, PGM und es importiert
  und schreibt Binary Terrain (BT)\index{PGM}\index{DTED}\index{CDF}
  Dateien\footnote{http://vterrain.org/Implementation/BT.html}. Die
  DEMs werden auf Wunsch auf einer Weltkarte lagerichtig angezeigt
  {\em View/Worldmap} und die UTM-Meridianstreifen k"onnen
  eingeblendet werden (Abb. \ref{vtbuilder_2}) {\em Viw/UTM
  Boundaries}.
  \nomenclature{PGM}{}
  \nomenclature{DTED}{} 
  \nomenclature{CDF}{}
  \nomenclature{PGM}{} 
  
       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/vtbuilderdem.eps}
       \caption[Screenshoot VTBUILDER1]{\label{vtbuilder_1}Ausgabebildschirm mit
       importiertem USGS Modell "`Crater Lake"'}
       \end{figure}
 Im unteren rechten Bildrand wird die UTM-Region, das Datum der
 Koordinatenrealisierung und die aktuellen Mauskoordinaten
 angezeigt. Mit {\em View/Obtain Distance} kann in den Meß-Modus
 geschaltet werden. Durch einen Mausklick und das Bewegen des
 Mauszeigers bei gedr"uckter Maustaste k"onnen zwei Punkte
 angefahren werden, zwischen denen die Entfernung in Metern und
 entsprechend die Unterschiede in UTM- und Geographischen
 Koordinaten angezeigt werden.

       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/vtbmaputm.eps}
       \caption[Screenshoot VTBUILDER2]{\label{vtbuilder_2}VTBUILDER mit Weltkarte
       und UTM-Meridianstreifen}
       \end{figure}
 Weiter unterst"utzt VTBUILDER das Einlesen von USGS DLG-Dateien und ESRI \index{ESRI} Shape-Files.\index{shape}


\section{L"osung mit dem3D}
 \label{import_usgs_dem_de:dem3D}
Es wurde die Version 2.0a von dem3D auf einer Windows 2000 Installation verwendet.\\ 

  Um USGS ASCII-DEMs und SDTS-DEMs unter Windows anzeigen zu lassen,
  hat das USGS das Programm dem3D zur Verfügung gestellt. Nach dem
  Start wird das gewünschte DEM mit {\em File/Open} aufgerufen und
  angezeigt (Abb. \ref{dem3d_1}). Durch Gedrückthalten der linken
  Maustaste und gleichzeitiges Bewegen der Maus kann das Modell in
  allen 3 Achsen bewegt werden. Mit der Schaltfläche {\em Shader}
  kann zwischen verschiedenen Oberflächen- und Beleuchtungsmodellen
  gew"ahlt werden. Wahlweise kann unter der Schaltfläche {\em Scene}
  mit {\em Camera} das Projektionszentrum bestimmt und mit {\em
  Lights} Farbe und Standpunkt der Beleuchtungsquelle eingestellt
  werden. Die Himmelsrichtungen k"onnen durch {\em Compass}
  angezeigt  und  ein Gitter mit {\em Grid} bzw. eine
  Wasseroberfläche mit {\em Water} eingeblendet werden (Abb.
  \ref{dem3d_2}).  Eine Statuszeile im linken unteren Fensterrahmen
  informiert über die Mausposition, Lage des Projektionszentrums,
  "Uberh"ohung der H"ohenkoordinaten und die gew"ahlte Auflösung.
       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/dem3d-craterlake.eps}
       \caption[Screenshoot dem3D Craterlake 1]{\label{dem3d_1}Anzeige des USGS-DEM
       "`Craterlake"'\ mit dem3D}
       \end{figure}

       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/dem3d-grid-craterlake.eps}
       \caption[Screenshoot dem3D Craterlake 2]{\label{dem3d_2}Anzeige des USGS-DEM
       "`Craterlake"'\ mit Himmelsrichtung und Gitter mit dem3D}
       \end{figure}

  \section{L"osung mit Grass}
    \label{import_usgs_dem_de:grass}
   Es wurde GRASS 5.0pre1 unter einer Debian GNU/Linux
    Installation (woody) verwendet.\\


    
    Um ein digitales H"ohenmodell zu importieren, muss eine Umgebung
    aus passender {\em Location}, {\em Mapset} und {\em Region}
    geschaffen werden.  Dies sollte gleich beim Aufruf von {\em grass5}
    erfolgen, da hier am einfachsten alle Parameter eingegeben
    werden k"onnen. Ein nachträgliches "Andern und Anpassen ist zwar
    mit {\em g.region} \index{g.region} für die Regionsparameter und
    {\em g.setproj} für die Projektion m"oglich, aber die "Anderung
    der Projektion bewirkt hierbei keine Neuprojektion schon
    vorhandener Daten in der Location.\\ Es sollten also bekannt
    sein: die Projektionsart, bei Daten des USGS "ublicherweise UTM
    (Universal Transversal Marcatorprojection), der
    Meridianstreifen\nomenclature{Meridianstreifen}{leer}
    \index{Meridianstreifen}\nomenclature{UTM}{leer}, zus"atzlich k"onnen
    noch das verwendete Ellipsoid und das Datum der
    Koordinatenrealisierung angegeben werden.\index{Datum} Sollte
    die Ausdehnung des DHM nicht bekannt sein so kann man mehr oder
    weniger m"uhsam mit einem Editor den Header durchforschen oder
    man importiert das Modell mittels {\em m.dem.extract} unter
    Angabe der Importdatei {\em input=} und ohne Angabe einer
    Ausgabedatei {\em output}. Das Programm wird nun im
    Examination - Modus ausgeführt.
    Hierdurch erh"alt man  in der Programmmeldung Angaben "uber die
    aktuellen Regionsparameter {\em Current Region Settings}, und
    interessanter, "uber die zu importierende Datei zum Beispiel:\\

\begin{kommando}
\begin{verbatim}

GRASS:~ > m.dem.extract input=/home/heiko/g3d/crla_bathy.dem
Current Region Settings-----------------------------
rows:       973
cols:       507
north:      5901608.25
south:      5901122.25
east:       3464760.75
west:       3464507.75
ns_res:     0.500000
ew_res:     0.500000

Reading Elevation Tape...
----------------------------------------------------
File # 1

min elevation: 946.000000  max elevation: 2721.000000
ns_res: 30.000000  ew_res: 30.000000
# of columns in file = 1374
C-record: 0
file north UTM = 4775095.04759036
file south UTM = 4733028.06587524
file east UTM = 592070.83615184
file west UTM = 550840.83667175
(outside current geographic region)
-----tape min elevation:946  tape max elevation:2721

\end{verbatim}
\end{kommando}\

  Somit haben wir alle Informationen um das Digitale H"ohenmodell zu importieren.\\



    \subsection{Einlesen des DHM}
    Nachdem mit {\em g.region} die Parameter des Mapset angepasst
    wurden kann der nochmalige Aufruf {\em m.dem.extract} wiederum
    mit Angabe des Importpfades {\em input=} und der zu erzeugenden
    Rasterdatei {\em output=} diesmal korrekt bearbeitet werden und
    man wird mit der Meldung {\em intersects with current geographic
    region} belohnt.\\ Das Anzeigen der Rasterdatei geschieht wieder
    mit {\em d.rast} in einem mit {\em d.mon} ge"offneten oder
    ausgew"ahlten Monitor.\\

\begin{kommando}
\begin{verbatim}

GRASS:~ > m.dem.extract input=/test/crla.dem output=rasterdata

\end{verbatim}
\end{kommando}\

       \begin{figure}[h]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/grass-import-usgs-2.eps}
       \caption[GRASS-Ausgabemonitor USGS-DEM]{\label{grass2}GRASS-Ausgabemonitor
       mit USGS DEM Crater Lake}
       \end{figure}

\paragraph{Tipps:}
   \begin{itemize}
   \item Beim Importieren von USGS-DEMs kommt es vor das ein oder
   mehrere meist am Rand gelegene Höhenkoordinaten einen falschen
   Wert von -32767 Metern aufweisen. Ob die ein Fehler in der
   Ursprungsdatei, ein Übertragungsfehler oder "ahnliches ist 
   kann noch nicht gesagt werden. Man kann nun die
   Rasterdatei per {\em r.out.ascii} in eine ASCII-Datei
   konvertieren und die Werte per Editor berichtigen, oder man
   benutzt den Befehl {\em r.mapcalc
   'Ergebnissdatei=if(Ausgangsdatei == -32767, null(),
   Ausgangsdatei)'}. Hierdurch werden alle Werte der Ausgangsdatei
   die gleich -32767 sind auf null() also nicht vorhanden gesetzt.
   \item anstatt \begin{math}==\end{math} können auch andere logische
   Operatoren benutzt werden, so z.B. kleiner oder gleich
   \begin{math}<=\end{math}, gr"o"ser oder gleich \begin{math}>=\end{math}
   , nicht gleich \begin{math}!=\end{math} und so weiter. Eine Liste
   aller M"oglichkeiten findet sich in der Manualpage zu r.mapcalc
   {\em man r.mapcalc}.
   \end{itemize}


\section{L"osung mit dlgv32 / DLG Viewer}
\label{import_usgs_dem_de:dlgv32}

Es wurde der DLG Viewer 3.7 unter einer Windows 2000 Installation verwendet.\\


Ein weiteres Programm Des USGS ist dlgv32 (Digital Line Graph
Viewer). Neben der M"oglichkeit USGS Vektor-Dateien (DLGs)
anzuzeigen kann es auch USGS ASCII-DEMs und SDTS DEMs verarbeiten.
Unter Anderem importiert dlgv32 in der Version 3.7 USGS DEMs,
Orthophotos (DOG) und Rastergraphiken(DRG) im GEOTIFF-
\index{geotiff} \nomenclature{geotiff}{leer}Format, GTOPO30 Höhendaten
\nomenclature{GTOPO30}{leer} und CDED-Dateien (Canadian Digital Elevation
Data).   

       \begin{figure}[H]
       \centering
       \includegraphics[width=6cm]{import-usgs-dem/dlgv32-1.eps}
       \caption[Screenshoot dlgv32]{\label{dlgv32_1}Importiertes USGS
       DEM "`Crater Lake"'\ in dlgv32}
       \end{figure}

Die Anzeige in dlgv32 alias DLG Viewer kann in {\em Tools/Control
Center/Options} Beeinflusst werden. Informationen über die
dargestellten Daten erhällt man in der Statusanzeige im unteren
Fensterrahmen und unter {\em Tools/Control Center/Metadaten}.
Weiterhin zu erwähnen ist das dlgv32 die Möglichkeit zur
Druckausgabe besitzt. 


