[Wsplgen-commits] r23 - trunk/doc/Feinkonzept
scm-commit at wald.intevation.org
scm-commit at wald.intevation.org
Fri Jan 6 13:29:45 CET 2006
Author: mrchip
Date: 2006-01-06 13:29:44 +0100 (Fri, 06 Jan 2006)
New Revision: 23
Modified:
trunk/doc/Feinkonzept/WSPLGEN-Feinkonzept.tex
Log:
1. Version zum Korrekturlesen
Modified: trunk/doc/Feinkonzept/WSPLGEN-Feinkonzept.tex
===================================================================
--- trunk/doc/Feinkonzept/WSPLGEN-Feinkonzept.tex 2006-01-05 16:49:43 UTC (rev 22)
+++ trunk/doc/Feinkonzept/WSPLGEN-Feinkonzept.tex 2006-01-06 12:29:44 UTC (rev 23)
@@ -1,1435 +1,1470 @@
-%
-% $Id$
-%
-\documentclass[12pt,german]{scrartcl}
-
-%----------------------------------------------
-% Load packages
-
-\usepackage{a4}
-\usepackage{times}
-\usepackage[latin1]{inputenc}
-\usepackage{fancyhdr}
-\usepackage{german}
-%\usepackage[marvosym]{eurofont}
-%\usepackage[all, light]{draftcopy}
-%\usepackage{supertabular}
-%\usepackage{colortbl}
-%\usepackage{epsf}
-\usepackage{graphicx}
-\usepackage{lastpage}
-%\usepackage{proposal}
-
-
-%----------------------------------------------
-% Document DATE and VERSION
-% set these values when releasing a new version
-
-% Clearunderscore is a workaround when dealing with filenames with underscores.
-%\def\cleanunderscore#1_#2{\expandafter #1\_#2}
-%\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{\cleanunderscore#2}}
-% EDIT HERE
-\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}}
-\RCS$Id$
-\RCS$Revision$
-
-\newcommand{\documentdate}{05. Januar 2006}
-\newcommand{\documentrevision}{\RCSRevision}
-\newcommand{\documentversion}{0.5.1}
-\newcommand{\documentID}{\RCSId}
-%----------------------------------------------
-
-%----------------------------------------------
-% Document TITLE
-\newcommand{\documenttitle}{WSPLGEN, Technisches Feinkonzept}
-
-
-%----------------------------------------------
-% Ein paar Einstellungen die das Layout beeinflussen
-
-\paperwidth=21cm
-\hoffset=-0.54cm
-\textwidth=17cm
-
-\paperheight=29.7cm
-\voffset=-1.5cm
-\topmargin=0cm
-\headheight=1cm
-\textheight=24cm
-
-\setcounter{secnumdepth}{4}
-\setcounter{tocdepth}{4}
-
-%----------------------------------------------
-% Nun gehts es wirklich los
-
-\begin{document}
-
-%-----------------------------------
-% HEADER/FOOTER DEFINITION
-
-% for some pages latex switches back to pagestyle plain :-(
-\fancypagestyle{plain}{%
- \fancyhf{} % clear all header and footer fields
- \fancyhead[LO,RE]{\footnotesize \documenttitle\\ \leftmark}
- \fancyfoot[RO,LE]{\footnotesize S-L-F GmbH} % Author
- \fancyfoot[CO,CE]{\footnotesize \thepage/\pageref{LastPage}}
- \fancyfoot[LO,RE]{\footnotesize \documentdate
- \\\documentID}
- \renewcommand{\footrulewidth}{0.4pt}
-}
-
-% and now define pagestyle fancy
-\fancyhead{} % clear all fields
-\fancyhead[LO]{\footnotesize \documenttitle\\ \leftmark}
-
-\fancyfoot{}% clear all fields
-\fancyfoot[RO]{\footnotesize S-L-F GmbH} % Author
-\fancyfoot[CO]{\footnotesize \thepage/\pageref{LastPage}}
-\fancyfoot[LO]{\footnotesize \documentdate
-\\\documentID}
-
-\renewcommand{\footrulewidth}{0.4pt}
-
-%
-% END Header/Footer Definition
-%-----------------------------------
-
-%----------------------------------------------
-% MACRO DEFINITION
-%
-% \Fig{figure}{lof text}{caption} :
-% places 'figure' and
-% writes 'caption' at the bottom with leading
-% 'Abbildung figno:'. 'lof text' is added to the list of
-% figures.
-% Example:
-% \Fig{\epsfxsize30mm \epsffile{x.eps}}{the x}{the x}
-%
-% \FigNoEntry{}{} :
-% same as above, no entry in figures list
-%
-% \FigCaption{} :
-% line with figure caption, setting figure
-% counter and figures list
-%
-% \Tab{table}{lot text}{caption} :
-% places 'table' and writes caption on top of the table
-% with leading 'Tabelle tabno:'. 'lot text' is added to
-% the list of tables.
-%****************************************************************************
-% Figure makro for graphics continously enumerated.
-%
-
-\newcounter{FigCnt}
-\newcounter{TabCnt}
-
-\newcommand{\Fig}[3]%
-{
- \refstepcounter{FigCnt}
- \addcontentsline{lof}{figure}%
- {\protect\numberline{\arabic{FigCnt}}{#2}}
- \mbox{#1}
-
-\nopagebreak
- {Abbildung \arabic{FigCnt}: #3}
-
-}
-
-\newcommand{\FigNoEntry}[2]%
-{
- \refstepcounter{FigCnt}
- \mbox{#1}
-
-\nopagebreak
- {Abbildung \arabic{FigCnt}: #2}
-
-}
-
-\newcommand{\FigCaption}[1]%
-{
- \refstepcounter{FigCnt}
- \addcontentsline{lof}{figure}%
- {\protect\numberline{\arabic{FigCnt}}{#1}}
-
- %{Figure \thesection.\arabic{FigCnt}: #1}
-}
-
-\newcommand{\Tab}[3]%
-{
- \refstepcounter{TabCnt}
- \addcontentsline{lot}{figure}%
- {\protect\numberline{\arabic{TabCnt}}{#2}}
- {Tabelle \arabic{TabCnt}: #3}
-\nopagebreak
- #1
-
-}
-
-\hyphenation{Intevation}
-% end macro definition
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\newcounter{schritt}
-\renewcommand{\theschritt}{\Roman{schritt}}
-%\makeatletter\renewcommand{\p at schritt}{Abschnitt~\thesubsubsection~}\makeatother
-
-%-----------------------------------
-% DOCUMENT SETTINGS
-\pagestyle{fancy}
-\setlength{\parindent}{0cm}
-\setlength{\parskip}{5pt plus 2pt minus 1pt}
-
-
-%-----------------------------------
-% TITLE PAGE
-
-{
- \makebox[5cm][l]{\includegraphics[height=3cm]{abbildungen/slf-logo.eps}}\hspace{5cm}\makebox[5cm][l]{\includegraphics[height=3cm]{abbildungen/intevation-logo.eps}}\\
- \makebox[5cm][l]{\tt http://s-l-f.de}\hspace{5cm}\makebox[5cm][l]{\tt http://intevation.de}
-}
-
-\vspace{4cm}
-
-{
- \sffamily\large
- WSPLGEN (\textbf{W}asser \textbf{SP}iegel\textbf{L}agen \textbf{GEN}erator)
-
- \vspace{1cm}
- {
- \bfseries\huge
- Feinkonzept
- }
-
- \vspace{1cm}
- Version \documentversion~-~Datum: \documentdate
-
- Revision \documentrevision
-}
-
-\vspace{4cm}
-
-\thispagestyle{empty}
-
-\vfill
-
-\begin{flushleft}
-Autor WSPLGEN:\\
-Ulrich Kiel $<$u.kiel at S-L-F.de$>$\\
-STADT-LAND-FLUSS INGENIEURDIENSTE GmbH,\\
-Auf dem Hollen 12, 30165 Hannover\\
-Tel: 0511/353196-02, Fax: 0511/353196-09
-
-\vspace{0.5cm}
-Qualitätssicherung:\\
-Intevation GmbH, Georgstraße 4, 49074 Osnabrück\\
-Tel: 0541/33508-30, Fax: 0541/33508-59
-\end{flushleft}
-
-
-\newpage
-% the title page ends here.
-{
-\tableofcontents
-%
-\listoffigures
-%
-%\listoftables
-%EDIT HERE
-\markboth{Inhaltsverzeichnis}{Inhaltsverzeichnis}
-}
-% START YOUR DOCUMENT HERE!
-
-
-\newpage
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Allgemeines}
-
-Das Programm WSPLGEN soll dazu dienen Dateien im ESRI
-Shape Format zu erzeugen, um eine flächige Darstellung der Ergebnisse
-eindimensionaler mathematischen Modellen zur Berechnung von
-Wasserständen zu ermöglichen.
-
-Das Programm WSPLGEN wird als eigenständiges Programm realisiert.
-Es kann dann von Bedieneroberflächen (Graphic-User-Interfaces, GUIs)
-aufgerufen werden und liefert seine
-Ergebnisse in verschiedenen Dateien für die anschließende Visualisierung.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Vorgehensweise}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}
-\subsubsection{Schritt \theschritt ~-~Auswertung der Kommandozeilenparameter}
-
-Als erstes werden von WSPLGEN die Kommandozeilenparameter ausgewertet.
-Sollte das Programm hierbei unbekannte Optionen oder ungültige
-Argumente zu den Optionen finden, so wird ein Fehler generiert
-(siehe Abschnitt~\ref{subsubsec:file-prot} und Abschnitt~\ref{sec:fehlermeldungen}).
-Werden Optionen mehrfach verwendet (z.B. bei der Angabe einer Option in der
-Kommandozeile und gleichzeitiger Verwendung der gleichen Option in der
-Parameterdatei (siehe Abschnitt \ref{subsubsec:param-par}), so wird
-nur das erste Auftreten in der Kommandozeile berücksichtigt und eine Warnung
-generiert (siehe Abschnitt~\ref{subsubsec:file-prot} und Abschnitt~\ref{sec:fehlermeldungen}).
-Die zulässigen Kommandozeilenoptionen und ihre Argumente findet man in
-Abschnitt~\ref{subsec:param} und Abschnitt~\ref{sec:parameter}.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}\label{schritt:einlesen}
-\subsubsection{Schritt \theschritt~-~Einlesen der Eingabedaten}\label{subsubsec:schritt-einlesen}
-
-Die wichtigsten Kommandozeilenparameter bestimmen welche Dateien, das Programm
-einlesen soll und in welche Dateien es die Ausgaben schreiben soll.
-Wird das Programm angewiesen eine Datei zu lesen, die nicht existiert, die
-aus einem anderen Grund (z.B. ungenügende Rechte) nicht gelesen werden kann
-oder die in einem unbekannten oder fehlerhaften Format vorliegt, so wird
-eine Fehlermeldung generiert (siehe Abschnitt~\ref{subsubsec:file-prot}).
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\paragraph{Digitales Geländemodell (DGM)}
-
-\verb; ;
-
-WSPLGEN liest zuerst ein digitales Geländemodell (DGM) ein, das durch seine Größe
-auch gleichzeitig die maximal mögliche Ausdehnung des Ergebnisses festlegt.
-Das DGM muss für die weitere Bearbeitung als vermaschtes Netz vorliegen.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_netz.eps}}{Ein ganz kleiner Ausschnitt aus einem DGM als vermaschtes Netz}{Ausschnitt eines DGM als vermschtes Netz}
-\end{center}
-
-Die verschiedenen möglichen Formate des DGM werden in Abschnitt~\ref{subsubsec:file-dgm}
-genauer spezifiziert. Wird ein Format für das DGM gewählt, das kein vermaschtes Netz
-darstellt (z.B. eine ASCII-Datei mit X,Y,Z-Tripeln) so wird nach dem Einlesen der Punkte
-eine automatische Triangulierung durchgeführt (siehe Schritt~\ref{schritt:triang} in Abschnitt~\ref{subsubsec:schritt-triang}).
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{Gewässerquerprofile}
-
-\verb; ;
-
-Als nächstes wird die Lage der Gewässerquerprofile eingelesen.
-Die Gewässerquerprofile müssen so lang sein, dass an ihren Enden eine Geländehöhe
-im DGM vorhanden ist, die sicher höher liegt, als die Wasserstände die den Profilen
-zugeordnet werden sollen.
-
-Zwischen dem ersten und dem letzten Punkt eines Querprofils können beliebig viele
-Knickpunkte liegen, um die Lage der Querprofile aus hydraulischer Sicht sinnvoll
-festlegen zu können.
-
-Als ein Attribut müssen die Gewässerquerprofile eine nummerische Gewässerstationierung
-aufweisen, die es ermöglicht den Querprofilen Wasserstände zuzuweisen, die für verschiedene
-Punkte im Gewässer vorliegen und die es ermöglich Stationierungen zwischen zwei Querprofilen
-zu interpolieren.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_profil.eps}}{Lage von drei Gewässerquerprofilen}{Gewässerquerprofile}
-\end{center}
-
-Das genaue Format der Querprofile wird in Abschnitt~\ref{subsubsec:file-profile}
-genauer spezifiziert.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{Wasserstände}
-
-\verb; ;
-
-Als nächstes werden die Wasserstände eingelesen, die den Gewässerquerprofile
-zugeordnet sind. Sollte einem Gewässerquerprofil kein Wasserstand
-direkt zugeordnet werden können, so wird versucht einen Wasserstand linear
-aus stromauf und stromab liegenden Wasserständen zu interpolieren. Sollte
-dies nicht möglich sein, weil entweder kein stromauf oder kein
-stromab liegender Wasserstand definiert wurde, so wird eine Fehlermeldung
-generiert (siehe Abschnitt~\ref{subsubsec:file-prot}) und das Programm beendet.
-
-Es kann immer nur ein Wasserstand pro Profil verwendet werden. Sollten doch
-mehrere Wasserstände einem Profil zugeordnet sein, so wird nur der erste
-Wasserstand verwendet und eine entsprechende Warnung generiert
-(siehe Abschnitt~\ref{subsubsec:file-prot}).
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{Sperren und Brüche (optional)}
-
-\verb; ;
-
-Um sowohl Brüche als auch den Neubau von Hochwasserschutzdämmen simulieren
-zu können, ohne das DGM verändern zu müssen, ist es möglich eine weitere
-Datei mit Linien im ESI SHAPE-Format einzulesen.
-
-In dieser Datei muss allen Polylinien ein Attribut zugeordnet
-sein. Diese Attribut bestimmt, ob es sich bei einer Linie um eine
-Sperre handelt (Wert \verb;SPERRE;), also Wasser diese Linie
-nicht übersteigen kann, oder ob es sich um einen 'Bruch' handelt
-(Wert \verb;BRUCH;), also Wasser in jedem Fall entlang der
-Linie transportiert wird.
-
-Sperren bzw. Brüche können nicht zusammen mit der Option \verb;-GEL;
-verwendet werden (siehe Abschnitt~\ref{subsubsec:param-gel}.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-
-\refstepcounter{schritt}\label{schritt:triang}
-\subsubsection{Schritt \theschritt~-~Triangulierung (optional)}\label{subsubsec:schritt-triang}
-
-Wird das DGM nicht in einem Format zur Verfügung gestellt, das ein
-vermaschtes Netz repräsentiert, sondern nur unabhängige Knoten, so wird
-von WSPLGEN ein vermaschtes Netz erzeugt.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}\label{schritt:verdichten}
-\subsubsection{Schritt \theschritt~-~Verdichtung der Wasserstände}\label{subsubsec:schritt-verdichten}
-
-Im Moment wird von sinnvoll geknickten Querprofilen ausgegangen, die
-ein lineares Interpolieren von zusätzlichen Querprofilen zwischen
-den verhandenen Querprofilen ermöglichen.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_interpolierte_profile.eps}}{Konstruktion und Lage der interpolierten Profile}{Interpolierte Profile}
-\end{center}
-
-Als sinnvollen Wert für den Abstand der zu interpolierten
-Querprofile, wird der mittlere Abstand der Knoten im DGM benutzt.
-Wenn das DGM also großmaschig ist, werden weniger Profile interpoliert,
-als wenn das DGM feinmaschiger ist.
-
-Für jedes interpolierte Profil wird ein zugehöriger Wasserstand aus den
-Wasserständen ermittelt, die den Profilen zugewiesen wurden, die auch
-für die Interpolation der Lage der interpolierten Profile dienten.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_interpolierte_wsp.eps}}{Vorgegebene und Interpolierte Wasserstände}{Interpolierte Wasserstände}
-\end{center}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}\label{schritt:uebertragen}
-\subsubsection{Schritt\theschritt~-~Übertragung der Wasserstände auf das DGM}\label{subsubsec:schritt-uebertragen}
-
-Nachdem für eine ausreichende Zahl von Profilen die Wasserstände festgelegt wurden,
-werden die Wasserstände auf das DGM übertragen. Dabei wird jedem Punkt des DGM,
-ein interpolierter Wasserstand zugeordnet, der sich aus den Wasserständen ergibt,
-die den Profilen zugeordnet wurde, die dem DGM-Punkt am dichtesten sind. Hierbei
-wird für die Interpolation das \textit{Inverse-Distance Verfahren} mit maximal
-vier Punkten angewendet, wobei jeder Punkt aus einem anderen Quadranten stammen muss.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_zugewiesene_wsp.eps}}{Zuordnung der Wasserstande zu den Punkten des DGM}{Zuordnung der Wasserstände}
-\end{center}
-
-Liegen die 4 Punkte aller 4 Quadraten ausserhalb des Suchradiusses
-(maximaler Abstand der interpolierten Profile), so wird keine Zuordnung durchgeführt.
-Um die Profile ausreichend zu berücksichtigen, werden wenn nötig weitere Punkte in die
-Profile eingefügt, die natülcih auch den Wasserstand des Profils zugeweisen bekommen.
-
-Die Zuordnung erfolgt auch nur dann, wenn die Geländehöhe des DGM niedriger als der
-Wasserstand ist, der zugeordnet werden soll. Auf diese Weise wird bereits eine
-erste Klassifizierung in nasse oder trockene Punkte durchgeführt.
-
-Ab diesem Schritt spielt die Lage der Profile keine Rolle mehr.
-
-Wenn eine Datei mit Brüchen angegeben wird, so werden jetzt zusätzlich
-noch die Polylinien, die in der entsprechenden Datei sind als Brüche gekennzeichnet sind,
-ausgewertet. Dazu wird für den ersten Punkt der Linie ein Wasserstand aus den umliegenden
-Profilen wie für einen DGM-Punkt interpoliert und diese Wasserstand entlang der gesamten Bruchlinie
-angenommen. Anschließend wird allen DGM-Punkten, die dichter als der Suchradius von der Bruchlinie
-entfernt sind, der Wasserstand zugewiesen, wenn ihre Geländehöhe niedriger als dieser Wasserstand ist.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_zugewiesene_wsp_bruch.eps}}{Zuordnung der Wasserstände zu den Punkten des DGM entlang einer Bruchlinie}{Zuordnung entlang einer Bruchlinie}
-\end{center}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}\label{schritt:extrapolation}
-\subsubsection{Schritt \theschritt~-~Extrapolation der Wasserstände}\label{subsubsec:schritt-extrapolation}
-
-Die Extraplolation der Wasserstände, die auf das DGM übertragen wurden,
-erfolgt einfach iterativ entlang der verbindenden Kanten zwischen den Knoten
-des DGM (vgl. Schritt~\ref{schritt:einlesen} in Abschnitt~\ref{subsubsec:schritt-einlesen}).
-
-Bei jeder Iteration werden alle Kanten bestimmt, die einen nassen Knoten und einen Knoten
-ohne Wasserstand verbinden. Danach wird bei der kürzesten Kante beginnend der Wasserstand
-des nassen Knoten auf den Wasserstand, des bisher undefinierten Knoten übertragen,
-falls diesem inzwischen noch kein Wasserstand zugewiesen wurde.
-Die Zuweisung wird auch durchgeführt, wenn die Höhe des Knoten größer als der ihm zugewiesene Wasserstand ist.
-Der Knoten würde im folgenden als trockener Knoten zählen und nicht weiter berücksichtigt werden.
-
-Sind alle ermittelten Kanten bearbeitet, so beginnt das Ganze von vorne, bis keine
-Kanten mehr gefunden werden, die das geforderte Kriterium erfüllen.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_extrapolierter_wsp.eps}}{Extrapolation der Wasserstände zu den Punkten des DGM}{Extrapolation der Wasserstände}
-\end{center}
-
-Wenn eine Datei mit Sperren angegeben wird, so werden vor dem Beginn der Extrapolation
-alle Kanten des DGM entfernt, die Polylinien schneiden, die als Sperren gekennzeichnet
-sind (siehe Abschnitt~\ref{subsubsec:file-sperr}). Durch diese Löschen können Wasserstände die Speere nicht überwinden.
-
-\begin{center}
-\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_extrapolierter_wsp_sperre.eps}}{Extrapolation der Wasserstände zu den Punkten des DGM mit Sperre}{Extrapolation der Wasserstände mit Sperre}
-\end{center}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}\label{schritt:isolinien}
-\subsubsection{Schritt \theschritt~-~Generierung der Isolinien gleicher Wasserstände}\label{subsubsec:schritt-isolinien}
-
-In diesem Schritt brauchen nur die Kanten ermittelt werden, die einen nassen
-und einen trockenen Knoten verbinden. Es wird für jede solche Kante der Punkt bestimmt,
-an dem die Wassertiefe gleich Null ist. Ale so ermittelten Punkt werden verbunden
-und ergeben die gewünschte Isolinie.
-
-Um die gewünschten Abstufeungen zu erreichen (vgl. Abschnitt~\ref{subsubsec:param-delta}, werden
-die Geländehöhen des DGM schrittweise um die gewünschte Schrittweite \verb;DELTA; angehoben
-und die Schritte~\ref{schritt:extrapolation} und \ref{schritt:isolinien} solange
-wiederholt bis die gewünschte maximal Wassertiefe erreicht ist. Ist die Startwassertiefe \verb;VON; größer als Null, so
-wird dieses Anheben bereits einmal vor Schritt~\ref{schritt:extrapolation} durchgeführt.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\refstepcounter{schritt}
-\subsubsection{Schritt \theschritt~-~Schreiben der Ausgabedaten}
-
-Nachdem intern die Polygone gebildet wurden, die die verschiedenen Wassertiefen repräsentieren,
-werden sie in eine Ergebnisdatei geschrieben, die über die Kommandozeile mit dem Parameter \verb;-ERG;
-definiert wurde (siehe Abschnitt~\ref{subsubsec:param-ausgabe}). Wird der Parameter nicht angegeben,
-so wird die Datei WSPLGEN.SHP erzeugt (siehe Abschnitt~\ref{subsubsec:param-ausgabe}).
-Das Format der Ausgabedatei wird genauer in Abschnitt~\ref{subsubsec:file-ergebnisse} beschrieben.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Eingabedaten}
-
-Die Eingabedaten werden in der grafischen Bedieneroberfläche definiert und
-per Kommandozeilenparameter oder Parameterdatei und über verschiedene
-Eingabedateien an das Programm WSPLGEN übergeben. Eine erste Überprüfung
-auf Vollständigkeit und Sinnhaftigkeit sollte in der GUI erfolgen, da WSPLGEN
-bei den meisten Problemen nur einen Fehler generiert
-(siehe Abschnitt~\ref{subsubsec:file-prot}) oder Standardwerte benutzt,
-die nicht immer den eigentlichen Willen, des Benutzers wiedergeben. Beim
-letztgenannten Verhalten wird in jedem Fall eine Warnung generiert und
-eine entsprechende Meldung protokoliert (siehe Abschnitt~\ref{subsubsec:file-prot}).
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Kommandozeilen Parameter}\label{subsec:param}
-
-Jeder Parameter beginnt mit einem Leerzeichen gefolgt von dem Zeichen \verb;-; und
-seinem Namen. Falls dem Parameter Argumente folgen sollen, so muss als nächstes Zeichen
-ein \verb;=; folgen. Danach kommt die durch Komma getrennte Liste der Argumente. Da das
-Komma hier als Trennzeichen dient, darf es nicht ungeschützt in den Argumenten verwendet
-werden. Der Schutz des Zeichens wird durch das Einschliessen eines Arguments durch das
-Zeichen \verb;"; erreicht. Auch die Verwendung von Leerzeichen in Argumenten (z.B. Pfadangaben)
-ist so möglich.
-
-Optional können die folgenden Parameter zur Feinsteuerung der
-Arbeitsweise von WSPLGEN übergeben werden:
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -PAR (Parameterdatei)}\label{subsubsec:param-par}
-
-Die Option \verb;-PAR; bestimmt, ob weitere Parameter in einer Parameterdatei enthalten sind.
-
-Da die Beschränkung der Kommandozeile bei Windows in Kombination mit
-langen Pfadnamen leicht zu Problemen führen kann, wird auch die
-Zusammenfassung aller Parameter in einer Parameterdatei vorgesehen.
-Wird sie verwendet, wird zunächst die Kommandozeile weiter ausgewertet
-und danach zusätzlich weitere Parameter in der Parameterdatei.
-
-In jeder Zeile dieser Datei würde dann ein Parameter stehen, der vom
-Aufbau genau den Anforderungen entspricht, wie sie auch direkt auf
-der Kommandozeile bestehen.
-
-Der Name der Parameterdatei wäre dann das einzige Argument der Option \verb;-PAR;.
-
-Format: \verb;-PAR=<Pfad>;
-
-Beispiel: \verb;-PAR=C:\TEMP\WSPLGEN.PAR;
-
-Standardwert: Keinen
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -DELTA (Abstufungen der Wassertiefen)}\label{subsubsec:param-delta}
-
-Die Option \verb;-DELTA; bestimmt, in welchen Abstufungen die Wassertiefenpolygone
-generiert werden sollen, die Isolinien gleicher Wassertiefe repräsentieren.
-Die entsprechenden Wassertiefen werden aus den Argumenten \verb;<Von>;, \verb;<Bis>; und \verb;<Diff>;
-
-Begonnen wird mit der Wassertiefe \verb;<Von>; (die nicht negativ sein darf) und danach solange die
-Wassertiefen um den Wert von \verb;<Diff>; erhöht, bis eine Wassertiefe größer als \verb;<Bis>; ist.
-
-Wird das Argument \verb;<Von>; ausgelassen (das Komma wird dann das erste Zeichen hinter dem Gleichheitszeichen), wird für \verb;<Von>;
-der Wert 0,00 angenommen.
-
-Wird das Argument \verb;<Bis>; ausgelassen (es gibt dann zwei Kommata hintereinander), wird der
-maximale Wert der ermittelten Wasserstände für \verb;<Bis>; angenommen.
-
-Wird das Argument \verb;<Diff>; ausgelassen (das Komma wird dann zum letzten Zeichen dieses Parameters),
-wird für \verb;<Diff>; die auf zwei Nachkommastellen gerundete und durch 10 geteilte Differenz
-zwischen \verb;<Bis>; und \verb;<Von>; angenommen.
-
-Man kann auch ganz auf den Parameter verzichten, was dem Ausruf \verb;-DELTA=,,; entspricht.
-
-Format: \verb;-DELTA=[<Von>],[<Bis>],[<Diff>];
-
-Beispiel: \verb;-DELTA=1.0,2.0,0.25;
-
-In diesem Beispiel werden die Isolinien für 5 verschiedene Wassertiefen
-erzeugt (1,00, 1,25, 1,50, 1,75 und 2,00).
-
-Beispiel: \verb;-DELTA=0.9,2.1,0.25;
-
-Auch in diesem Beispiel werden die Isolinien für 5 verschiedene Wassertiefen
-erzeugt (0,90, 1,15, 1,40, 1,65 und 1,90), da der nächste Schritt 2,15 größer
-als 2,10 ist.
-
-Beispiel: \verb;-DELTA=,1.0,0.25;
-
-In diesem Beispiel so werden die Isolinien für 5 verschiedene Wassertiefen
-erzeugt (0,00, 0,25, 0,50, 0,75 und 1,00).
-
-Beispiel: \verb;-DELTA=,,0.25;
-
-Ist der größte Wasserstand z.B. 2,345, so werden die Isolinien für 5 verschiedene Wassertiefen
-erzeugt (0,00, 0,25, 0,50, 0,75, 1,00, 1,25, 1,50, 1,75, 2,00 und 2,25) erzeugt.
-
-Beispiel: \verb;-DELTA=1.3,,;
-
-Ist der größte Wasserstand z.B. 2,345, so werden die Isolinien für 11 verschiedene Wassertiefen
-(1,3, 1,4, 1,5, 1,6, 1,7, 1,8, 1,9, 2,0, 2,1, 2,2 und 2,3) erzeugt, da die Differenz von
-2,345 und 1,3 den Wert 1,045 ergibt und damit ein Wert von 0,10 für \verb;<Diff>; verwendet wird.
-
-Beispiel: \verb;-DELTA=,,;
-
-In diesem Beispiel werden alle Argumente automatisch bestimmt.
-
-Standardwert: Siehe oben
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -GEL (Einfluss von Geländeerhebungen)}\label{subsubsec:param-gel}
-
-Die Option \verb;-GEL; bestimmt, ob die Wasserstände durch Geländeerhebungen
-hindurch getragen werden sollen. Dies würde ein potenziel gefährdetes Gebiet im Hinterland
-produzieren, welches aber immer in etwa den Gradienten im Fluss aufweisen
-würde (keine sinnvolle Wiedergabe von eingestauten Flächen). Eine
-Verwendung mit den Daten aus \ref{subsubsec:param-lin} ist nicht sinnvoll und sollte in der GUI
-verhindert werden. Wird der Parameter mit Sperren bzw. Brüchen angegeben,
-wird eine Fehler generiert (siehe Abschnitt~\ref{subsubsec:file-prot}).
-
-Wird der Parameter \verb;-GEL; nicht angegeben, so wird der Wert \verb;SPERRE; angenommen,
-es wird also mit Einstau gearbeitet.
-
-Format: \verb;-GEL=<SPERRE|NOSPERRE>;
-
-Beispiel: \verb;-GEL=NOSPERRE;
-
-Standardwert: \verb;SPERRE;
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -DGM (Digitales Geländemodell)}\label{subsubsec:param-dgm}
-
-Die Optionen \verb;-DGM; bestimmt mit welcher Datei das DGM bestimmt.
-
-Die Art der Daten wir von dem Programm WSPLGEN selbst erkannt und
-eine Plausibilitätprüfung des DGM vorgenommen.
-
-Das DGM muss entweder ein Punktthema im SHAPE-oder ASCII-Format sein
-(X,Y,Z-Tripel), ein Grid, wie es vom Spatial Analyst verwendet wird,
-oder ein TIN, wie es der 3D-Analyst verwendet. Vorzuziehen wäre ein
-TIN, da hier die besten Möglichkeiten bestehen, das Gelände sinnvoll
-wiederzugeben.
-
-Werden dem WSPLGEN nur X,Y,Z-Tripeln (Punkt-SHAPE oder ASCII-Datei)
-übergeben, so werden die einzelenen Punkte mit einem einfach
-Triangulierungsalgorithmus vermascht.
-
-Ein Grid, wie es vom Spatial Analyst verwendet wird, sollte die
-letzte Wahl sein, da die Datenmenge, bedingt durch die rechteckige Form,
-schnell recht groß wird und Strukturen wie Deiche oder Gräben kaum
-wiedergegeben werden können, da ein Grid immer nur eine
-rechteckige ,,Vermaschung'' unterstützt.
-
-Format: \verb;-DGM=<Pfad>;
-
-Beispiel: \verb;-DGM=C:\DATEN\WESER\DGM.XYZ;
-
-Standardwert: Keinen
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -PRO (Lage der Querprofile)}\label{subsubsec:param-profile}
-
-Die Optionen \verb;-PRO; bestimmt mit welcher Datei die Lage der
-Querprofile bestimmt wird.
-
-Die Lage der Gewässerquerprofile wird immer als Polylinien-Thema in einer
-Shape-Datei übergeben. Die Profile können dabei beliebige Knicke
-enthalten. Jeder Profilspur ist ein Gewässer bzw. Gewässerbereich und eine
-eindeutige Stationierung zugewiesen (z.B. Weser, 120+230 oder Rhein-
-Vorland bei Köln, 102+242). Die beiden Angaben sind notwendig, um weitere
-benötigte Profile selbstständig vom Programm WSPLGEN interpolieren zu können.
-Der komplette Pfad der Datei mit den Querprofillagen wird dem Programm
-WSPLGEN mit dem Parameter \verb;-PRO; übergeben. Die Art der Daten
-wird von dem Programm WSPLGEN selbst erkannt und eine Plausibilitätprüfung der
-Profillagen vorgenommen (z.B. mittlerer Abstand der Profilspuren und
-Differenz der Stationierung)
-
-Format: \verb;-PRO=<Pfad>;
-
-Beispiel: \verb;-PRO=C:\DATEN\WESER\120-129.SHP;
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -WSP (Wasserstände)}\label{subsubsec:param-wsp}
-
-Die Optionen \verb;-WSP; bestimmt mit welcher Datei die Wasserstände
-bestimmt werden, die den Querprofilen zugeordnet werden sollen.
-
-Die Wasserstände werden als Tabelle im ASCII- oder DBF-Format übergeben.
-Dabei muss eine eindeutige Zuordnung zu den Gewässerquerprofilen möglich
-sein. Eine Tabelle sollte also 3 Spalten (Gewässerbereich, Stationierung
-und Wasserstand enthalten).
-
-Die Art der Daten wird von dem Programm WSPLGEN selbst erkannt und eine
-Plausibilitätprüfung der Wasserstände vorgenommen (z.B. Kontinuierliches
-Abnehmen der Wasserstände mit bzw. gegen die Stationierung).
-
-Parameter Format: \verb;-WSP=<Pfad>;
-
-Parameter Beispiel: \verb;-WSP=C:\DATEN\WESER\HQ5-120-129.TXT;
-
-Standardwert: Keinen
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -LIN (Sperren und Brüche)}\label{subsubsec:param-lin}
-
-Die Optionen \verb;-LIN; bestimmt mit welcher Datei die Sperren
-bzw. Durchbrüche bestimmt werden.
-
-Format: \verb;-LIN=<Pfad>;
-
-Beispiel: \verb;-LIN=C:\TEMP\BREAK.SHP;
-
-Standardwert: Keinen
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -AUSGABE (Ausgabedatei)}\label{subsubsec:param-ausgabe}
-
-Als Ausgabedaten generiert das Programm WSPLGEN bei fehlerfreier Ausführung
-eine Shape-Datei, in der Polygone enthalten sind, deren Umgrenzung Isolinien
-gleicher Wassertiefe repräsentieren (siehe Abschnitt~\ref{subsubsec:file-ergebnisse}). Wird
-dieser Parameter nicht angegeben, so wird als Ausgabedateiname ein Standardwert
-angenommen.
-
-Format: \verb;-AUSGABE=<Pfad>;
-
-Beispiel: \verb;-AUSGABE=C:\TEMP\WSPLGEN.SHP;
-
-Standardwert: \verb;WSPLGEN.SHP;
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -FORT (Fortschritt)}\label{subsubsec:param-fort}
-
-Während der Generierung wird der Fortschritt kontinuierlich in einer
-Fortschrittsdatei aktualisiert, so dass die GUI in der Lage ist,
-den Fortschritt anzuzeigen (siehe Abschnitt~\ref{subsubsec:file-fort}).
-
-Format: \verb;-FORT=<Pfad>;
-
-Beispiel: \verb;-FORT=C:\TEMP\WSPLGEN.STA;
-
-Standardwert: \verb;WSPLGEN.STA;
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Parameter -PROT (Protokoll)}\label{subsubsec:param-prot}
-
-In einer Protokolldatei werden Warnungen und Fehler gespeichert,
-so dass der Benutzer nach dem Lauf überprüfen kann, ob alles zu
-seiner Zufriedenheit erledigt werden konnte oder es Probleme gegeben hat.
-(siehe Abschnitt~\ref{subsubsec:file-prot})
-
-Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
-Sollte es also Fehler oder Warnungen gegeben haben, die der Benutzer
-nicht ignorieren will, so muss er die Eingabedaten oder Parameter
-ändern und einen erneuten Lauf starten. Die Meldungen sind aber
-so aussagekräftig, dass sie dem Benutzer optimale Hinweise für sein
-weiteres Vorgehen liefern (siehe Abschnitt~\ref{subsubsec:file-prot}).
-
-Wenn eine sinnvolle Shape-Datei erzeugt werden konnte (keine Fehler),
-so kann in einer GUI die weitere Visualisierung stattfinden.
-
-Format: \verb;-PROT=<Pfad>;
-
-Beispiel: \verb;-PROT=C:\TEMP\WSPLGEN.LOG;
-
-Standardwert: \verb;WSPLGEN.LOG;
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Zwingend erforderliche Eingabedateien}
-
-Folgende Dateien werden von WSPLGEN zwingend benötigt.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Digitales Geländemodell (DGM)}\label{subsubsec:file-dgm}
-
-Das digitale Geländemodell darf in drei verschiedenen Dateiformaten vorliegen,
-die im folgenden näher beschrieben werden.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{ASCII-Format mit X,Y,Z-Tripeln}
-
-\verb; ;
-
-Das einfachste Format ist ein Format, das nur eine Kopfzeile und danach Tripel von Zahlen enthält,
-die die X- und Y-Koordinaten von Geländepunkten und als Z-Wert die Geländehöhe angeben.
-
-Format Beschreibung:
-
-Die Zeichen 'X', 'Y' und 'Z' bestimmen die Spalten für die entsprechenden Werte und stehen in der Kopfzeile.
-Die Ziffern '0' bis '9' und die Zeichen ',' oder '.' (\textit{Kommazeichen})dienen der Bildung von Zahlen.
-Beliebige Kombinationen von Leerzeichen und Tabulatoren (\textit{Trennzeichen}) dienen als Trennung
-zwischen den Spalten und die Zeilenenden werden durch das Zeichen 'Neue Zeile' (Newline) und/oder
-'Wagenrücklauf' (carriage return) (\textit{Zeilenendzeichen}) beendet.
-
-Leerzeilen, also Zeilen, die nur aus \textit{Trennzeichen} und \textit{Zeilenendzeichen} gebildet werden,
-werden einfach überlesen.
-
-Jede Datei in diesm Format hat genau eine Kopfzeile, in der die Zeichen 'X', 'Y' und 'Z'
-jeweils genau einmal vorkommen müssen und durch mindestens ein Leerzeichen oder einen Tablulator
-getrennt werden. Diese Zeile genau wie alle weiteren muss durch die Zeilenendzeichen beendet werden.
-
-In allen weiteren Zeilen stehen 3 Zahlen, die durch \textit{Trennzeichen} getrennt sind.
-Die Zahlen müsen mit einer Ziffer beginnen und dürfen einmal als Kommazeichen das Zeichen '.' oder ',' aufweisen.
-Nach dem Kommazeichen dürfen wieder beliebig viele Ziffern folgen, wobei nur 2 Nachkommazeichen ausgewertet werden.
-Die Zahlen werden notfalls auf- oder abgerundet. Da im Allgemeinen davon auszugehen ist, das es sich bei den
-X- und Y- Koordinaten und den Z-Werten um Meterangaben handelt, ist eine Genauigkeit von 1 cm für
-die hydraulischen Fragestellungen voll ausreichend.
-
-Welche Zahl in einer Zeile welche Bedeutung hat, wird durch die Reihenfolge der Zeichen 'X', 'Y' und 'Z' in der
-Kopfzeile bestimmt.
-
-Jede weitere Zahl oder weitere Zeichen in einer Zeile werden ignoriert.
-
-Für die Anzahl der Zahlentripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als programmtechnische Begrenzung,
-welche im Moment weit über den Verarbeitungsmöglichkeiten aktueller Computern liegen dürfte.
-
-Format Beispiele:
-
-Dies wäre eine 'normale' Datei.
-\begin{verbatim}
-X Y Z
-3542345.23 5836253.23 123.34
-3537627.00 5836234.10 121.12
-\end{verbatim}
-
-Dies wäre eine 'merkwürdige', aber trotzdem gültige Datei.
-\begin{verbatim}
-Y Z X
-
-
- 5836253.23 123.34 3542345.23
-5836234.10123 121 3537627,0012 # der Wert stimmt nicht
-5817652 -88 345639872,234 36464 28282.344.222 noch Datenmüll
-
-
- 5836234.10 11,123 3537627.0012
-\end{verbatim}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{ESRI ASCII Raster-Datei-Format}
-
-\verb; ;
-
-Als weiteres gültige Format für die DGM-Daten kann das ESRI ASCII Raster-Datei-Format
-verwendet werden.
-
-Formatbeschreibung:
-
-Das ASCII Raster-Datei-Format ist ein einfache Format, das benutzt werden kann um Raster-Daten zwischen
-verschiedenen Programmen auszutauschen. Es besteht im wesentlichen aus ein paar Kopfzeilen denen eine Liste von Zellwerten folgt.
-
-Die Kopfdaten enthalten die folgenden Schlüsselworte und Werte.
-
-\begin{tabular}{l p{10cm}}
-\verb;ncols; & Anzahl der Spalten im Datensatz\\
-\verb;nrows; & Anzahl der Zeilen im Datensatz\\
-\verb;xllcenter; oder \verb;xllcorner; & X-Koordinate des Zentrums oder der linken-unteren Ecke der linken-unteren Zelle des Datensatzes\\
-\verb;yllcenter; oder \verb;yllcorner; & Y-Koordinate des Zentrums oder der linken-unteren Ecke der linken-unteren Zelle des Datensatzes\\
-\verb;cellsize; & Zellgröße des Datensatzes\\
-\verb;nodata_value; & Wert der Zellen zugewiesen wird, für die der Wert unbekannt ist. Dieses Schlüsselwort ist optional. Wird es nicht angegeben wird als Standardwert -9999 angenommen.\\
-\end{tabular}
-
-Format Beispiele:
-
-\begin{verbatim}
-ncols 4
-nrows 5
-xllcorner 378923.56
-yllcorner 4072345.43
-cellsize 30.23
-nodata_value -999.99
-43.0 3.2 45 7.2
- 3.1 56.2 2.3 5.5
-23.7 65.3 34.4 6.2
-32.1 35 45.12 65.12
-34.1 2 6 78
-etc
-\end{verbatim}
-
-Die erste Zeile ist ganz oben im Datensatz und läuft von links nach rechts. Die Zellwerte müssen durch Leerzeichen getrennt sein.
-Am Ende einer Zeile des Datensatzes ist kein \textit{Zeilenendzeichen} notwendig. Die Anzahl der Spalten im Kopfwird benutzt, um zu ermitteln, wann eine neue Zeile des Datensatzes beginnt.
-Die Anzahl der Zellenwerte muss gleich sein mit dem Profukt aus Anzahl Zeilen mal Anzahl Spalten.
-
-Bemerkung:
-
-Als \textit{Kommazeichen} dürfen hier entgeben dem amerikanischen Original
-sowohl das Zeichen ',' als auch das Zeichen '.' verwendet werden.
-
-Als \textit{Trennzeichen} dürfen hier entgeben dem amerikanischen Original
-sowohl Leerzeichen als auch Tabulatoren verwendet werden.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Lage der Querprofile}\label{subsubsec:file-profile}
-
-Die Lage der Gewässerquerprofile wird immer als Polylinien-Thema in einer
-Shape-Datei übergeben, wobei es egal ist, ob der Typ des Polylinien-Themas
-ARC, ARCZ oder ARCM ist. Die Profile (Polylinien) können dabei aus beliebig
-viele Stützstellen bestehen. Jeder Profilspur ist ein Gewässer bzw. Gewässerbereich
-und eine eindeutige Stationierung zugewiesen (z.B. Weser, 120+230 oder Rhein-
-Vorland bei Köln, 102+242). Die beiden Angaben sind notwendig, um weitere
-benötigte Profile selbstständig vom Programm WSPLGEN interpolieren zu können.
-
-Format Beschreibung:
-
-Die beiden Werte für Gewässer und Station werden gespeichert in den
-Attributen \verb;GEW;, das vom Typ Text (String) mit einer Länge von
-maximal 255 Zeichen ist und \verb;Station;
-welches vom Typ Fließkommazahl (Float) ist und maximal 4 Nachkommastellen
-enthalten sollte, da die Stationen auf 4 Nachkommastellen auf- bzw. abgerundet
-werden. Interpretiert man die Station als Gewässerkilometerangaben, so
-bedeuten 4 Nachkommastellen ein Genauigkeit von 10 cm was für Gewässerprofile
-voll ausreichend ist.
-
-Eine Stationierung könnte dann z.B. so aussehen 123,234 wobei es nicht wichtig
-ist, welches Trennzeichen verwendet wird, da die Zahlen binär gespeichert werden
-und somit kein Trennzeichen verwendet wird.
-
-Die Stationen dürfen nicht als Typ Text vorliegen (z.B. als 123+234),
-da keine Konvertierung vorgenommen wird.
-
-Die X- und Y-Koordinaten der Stützstellen der Polylinien werden im Allgemeinen
-als Meter interpretiert werden. Wichtig ist nur, das sie im gleichen
-Koordinatensystem und der gleichen Projektion wie die des DGM vorliegen
-und die gleiche Einheit haben. Es wird keine Transformation zwischen diese
-beiden Daten durchgeführt.
-
-Z- oder M- Werte der Polylinien werden ignoriert.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Wasserstände}\label{subsubsec:file-wsp}
-
-Die Wasserstände müssen den Gewässerprofilen zugeordnet werden können, wobei
-keine direkte Zuordnung notwendig ist. Es reicht aus, wenn Wasserstände
-für Gewässserprofile linear interpoliert werden können. Es also einen
-Wasserstand mit einer Stationierung stromauf und einen Wasserstand mit
-einer Stationierung stromab eines Gewässerprofils gibt. Um eine sinnvolle
-Zuordnung zu ermöglichen müssen die Wasserstände genau wie die Lage der Profile
-mit einem Gewässer (bzw. Gewässerabschnitt) und einer Station gekennzeichnet sein.
-Es werden nur Wasserstände für die Zuordnung herangezogen, die exakt gleiche
-Gewässerbeschreibungen wie die Profile haben, denen sie zugeordnet werden sollen.
-
-Die Wasserstände werden in einer Datei im ASCII- oder DBF-Format übergeben. Da die DBF-Datei
-immer auch eine der drei Dateien einer SHAPE-Datei ist, kann man auch sagen, das es sich um
-beliebige SHAPE-Dateien handeln kann, die die richtigen Attribute aufweisen. Die geometrischen
-Informationen der Shape-Dateien sind hier überflüssig und werden nicht eingelesen.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{ASCII-Format}\label{file-ascii-wsp}
-
-\verb; ;
-
-Das einfachste Format ist ein Format, das nur eine Kopfzeile und danach Tripel von Texten und Zahlen enthält,
-die das Gewässer, die Station und den Wasserstand angeben.
-
-Die Zeichen 'GEW', 'STATION' und 'WSP' bestimmen die Spalten für die entsprechenden Werte und stehen in der Kopfzeile.
-
-Die Zeichen die für die Gewässerkennzeichnung verwendet werden sollten, sollten ASCII-Codes
-von 33 ('\verb;!;') bis 126 ('\verb;~;') sein. Werden Umlaute oder andere Sonderzeichen wie
-z.B. '\verb;ß;' verwendet, so ist dafür Sorge zu tragen, das in der Datei, die die Lage der
-Profile definiert, die gleiche Kodierung verwendet wird.
-
-Die Ziffern '0' bis '9' und die Zeichen ',' oder '.' (\textit{Kommazeichen})dienen der Bildung von Zahlen.
-Beliebige Kombinationen von Leerzeichen und Tabulatoren (\textit{Trennzeichen}) dienen als Trennung
-zwischen den Spalten und die Zeilenenden werden durch das Zeichen 'Neue Zeile' (Newline) und/oder
-'Wagenrücklauf' (carriage return) (\textit{Zeilenendzeichen}) beendet.
-
-Leerzeilen, also Zeilen, die nur aus \textit{Trennzeichen} und \textit{Zeilenendzeichen} gebildet werden,
-werden einfach überlesen.
-
-Jede Datei in diesm Format hat genau eine Kopfzeile, in der die Zeichen 'GEW', 'STATION' und 'WSP'
-jeweils genau einmal vorkommen müssen und durch mindestens ein Leerzeichen oder einen Tablulator
-getrennt werden. Diese Zeile genau wie alle weiteren muss durch die Zeilenendzeichen beendet werden.
-
-In allen weiteren Zeilen stehen 1 Zeichenkette und 2 Zahlen, die durch \textit{Trennzeichen} getrennt sind.
-
-Die Zeichenkette darf nur dann Leerzeichen enthalten, wenn sie durch das Zeichen \verb;"; am Anfang und am Ende geschützt ist.
-Das Zeiche \verb;"; wird nicht mit in die Zeichenkette aufgenommen.
-
-Die Zahlen müsen mit einer Ziffer beginnen und dürfen einmal als Kommazeichen das Zeichen '.' oder ',' aufweisen.
-Nach dem Kommazeichen dürfen wieder beliebig viele Ziffern folgen, wobei nur 4 Nachkommazeichen sinnvoll sind,
-da die Stationen auf 4 Nachkommastellen auf- bzw. abgerundet werden.
-
-Welche Zahl in einer Zeile welche Bedeutung hat, wird durch die Reihenfolge der Zeichenketten 'GEW', 'STATION' und 'WSP' in der
-Kopfzeile bestimmt.
-
-Jede weitere Zahl oder weitere Zeichen in einer Zeile werden ignoriert.
-
-Für die Anzahl der Tripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als programmtechnische Begrenzung,
-welche im Moment weit über den Verarbeitungsmöglichkeiten aktueller Computern liegen dürfte.
-
-Format Beispiele:
-
-\begin{verbatim}
-GEW STATION WSP
-Weser 100,000 22,23
-Weser 100,300 22,12
-Weser 100,600 22,03
-Weser 100,900 21,97
-Weser 101,200 21,94
-Weser 101,512 21,76
-"Weser-Schleuse Drakenburg" 0,000 22,23
-"Weser-Schleuse Drakenburg" 0,650 22,22
-"Weser-Schleuse Drakenburg" 1,300 22,21
-"Weser-Schleuse-Drakenburg" 1,951 21,78
-Weser 101,842 20,21
-Weser 102,100 20,01
-\end{verbatim}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\paragraph{DBF-Format}
-
-\verb; ;
-
-Dieses Format ist ein klassisches binäres Datenabankformat, das nur aus einem
-Datenblatt besteht, das wiederum aus einer Definition und den anschließenden Daten besteht.
-
-Die Felder des Datenblattes, die das Gewässer, die Station und den Wasserstand angeben heissen
-genau wie beim ASCII-Format (siehe Abschnitt~\ref{file-ascii-wsp}) 'GEW', 'STATION' und 'WSP'.
-
-'GEW' ist hierbei als Zeichkette mit maximal 255 Zeichen definiert und STATION und WSP sind
-jeweils Zahlen, wobei STATION maximal 4 Nachkommastellen haben sollte, da die Stationen
-auf 4 Nachkommastellen auf- bzw. abgerundet werden.
-
-Die Zeichen die für die Gewässerkennzeichnung verwendet werden sollten, sollten ASCII-Codes
-von 33 ('\verb;!;') bis 126 ('\verb;~;') sein. Werden Umlaute oder andere Sonderzeichen wie
-z.B. '\verb;ß;' verwendet, so ist dafür Sorge zu tragen, das in der Datei, die die Lage der
-Profile definiert, die gleiche Kodierung verwendet wird.
-
-Für die Anzahl der Tripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als
-programmtechnische Begrenzung, welche im Moment weit über den Verarbeitungsmöglichkeiten
-aktueller Computern liegen dürfte.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Optionale Eingabedateien}
-
-Optional können noch die folgenden Daten zur Feinsteuerung der
-Arbeitsweise von WSPLGEN übergeben werden:
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Sperren und Durchbrüche}\label{subsubsec:file-sperr}
-
-Diese Datei ist optional und dient nur dazu dem Benutzer mehr Möglichkeiten
-zu geben, die Ergebnise zu beeinflussen (siehe Abschnitte~\ref{subsubsec:schritt-uebertragen} Schritt~\ref{schritt:uebertragen} und \ref{subsubsec:param-lin}).
-
-Formatbeschreibung:
-
-Die Datei ist wie schon die Datei zur Definition der Lage der Gewässerquerprofile
-im SHAPE-Format und enthält Polylinien (siehe Abschnitt~\ref{subsubsec:file-profile}).
-
-Sie hat ein Attribut, das den Namen \verb;TYP; trägt und vom Typ Text (String) ist.
-Das Attribut darf nur die Werte \verb;SPERRE; oder \verb;Bruch; annehmen. In jedem
-anderen Fall wird die zugehörige Polylinie ignoriert und eine Warnung ausgegeben.
-
-Wie schon bei der Profil-Datei werden die X- und Y-Koordinaten der Stützstellen der
-Polylinien im Allgemeinen als Meter interpretiert werden. Wichtig ist nur, das sie im
-gleichen Koordinatensystem und der gleichen Projektion wie die des DGM vorliegen
-und die gleiche Einheit haben. Es wird keine Transformation zwischen diese
-beiden Daten durchgeführt.
-
-Z- oder M- Werte der Polylinien werden ignoriert.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Ausgabedaten}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Rückgabewerte}
-
-Wenn WSPLGEN seine Arbeit ohne Fehler und Warnungen beenden kann, so wird
-der Rückgabewert 0 vom Programm zurückgeliefert und zeigt dem aufrufenden
-Programm oder der Eingabeaufforderung (Shell) an, das alles in Ordnung ist.
-
-Sollte es aber zu einem Fehler oder einer Warnung gekommen sein, so wird
-ein positiver Rückgabewert in Abhängigkeit des Fehlers generiert.
-
-Will oder kann das aufrufenede Programm die Protokoll-Datei nicht auswerten,
-so kann und sollte es aufgrund des Rückgabewertes trotzdem eine für den Benutzer
-sinnvolle Fehlermeldung generieren.
-
-Die verschiedenen Rückgabewerte mit den entsprechenden Fehlermeldungen
-sind im Anhang~\ref{sec:fehlermeldungen} zusammengefasst.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Ausgabedateien}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Ergebnisse}\label{subsubsec:file-ergebnisse}
-
-Als Ausgabedaten generiert das Programm WSPLGEN bei fehlerfreier Ausführung
-eine Shape-Datei, in der Polygone enthalten sind, deren Umgrenzung Isolinien
-gleicher Wassertiefe repräsentieren (vgl. Abschnitt~\ref{subsubsec:param-delta}).
-Die Shape-Datei enthält als Attribut die repräsentierte Wassertiefe.
-Der gewünschte Name der Shape-Datei (inkl. Pfadangaben) wird dem Programm
-WSPLGEN wieder über die Kommandozeile durch den Parameter \verb;-AUSGABE;
-(siehe Abschnitt~\ref{subsubsec:param-ausgabe}) mitgeteilt.
-
-Format Beschreibung:
-
-Bei der Ausgabedatei handelt es sich um eine Datei im ESRI-Shape-Format
-des Types (POLYGON).
-
-Die X- und Y-Koordinaten der Polygone werden systembedingt als Gleitkommazahlen
-gespeichert und repräsentieren das gleiche Koordinatensystem und die gleichen
-Einheiten wie das DGM, das als Basis für ihre Generierung diente.
-
-Das Attribut, das die repräsentierten Wassertiefen speichert,
-heisst \verb;Delta; (Differenz zwischen Wasserstand und Geländehöhe).
-Es gibt die Wassertiefe in Metern mit 2 Nachkommastellen an und ist daher vom Typ
-Fließkommazahl (Float).
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Fortschritt}\label{subsubsec:file-fort}
-
-Während der Generierung wird der Fortschritt kontinuierlich in einer
-Fortschrittsdatei aktualisiert, so dass die GUI in der Lage ist,
-den Fortschritt anzuzeigen. In einer Protokolldatei werden Warnungen
-und Fehler gespeichert, so dass der Benutzer nach dem Lauf überprüfen
-kann, ob alles zu seiner Zufriedenheit erledigt werden konnte oder es
-Probleme gegeben hat.
-
-Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
-Sollte es also Fehler oder Warnungen gegeben haben, die der Benutzer
-nicht ignorieren will, so muss er die Eingabedaten oder Parameter
-ändern und einen erneuten Lauf starten. Die Meldungen werden aber
-so aussehen, dass sie dem Benutzer optimale Hinweise für sein
-weiteres Vorgehen liefern.
-
-Wenn eine sinnvolle Shape-Datei erzeugt werden konnte (keine Fehler),
-so kann in einer GUI die weitere Visualisierung stattfinden.
-
-Format Beschreibung:
-
-Die Fortschrittdatei wird von dem Programm WSPLGEN sehr häufig
-geschrieben, da so eine ausrufende GUI die Möglichkeit hat, dem Benutzer
-ständig auf dem Laufenden zu halten. Zu diesem Grund schreibt WSPLGEN
-in die Fortschrittdatei immer wieder Text, der entweder in einer Zeile angibt was das
-Programm gerade tut oder in den folgenden Zeilen wie weit es damit ist.
-
-Format Beispiel:
-\begin{verbatim}
-->Lese DGM-Dateien
-10000 Punkte gelesen (20% der Datei)
-20000 Punkte gelesen (41% der Datei)
-30000 Punkte gelesen (62% der Datei)
-40000 Punkte gelesen (83% der Datei)
-45322 Punkte gelesen (100% der Datei)
-->Lese Querprofile
-100 Profile gelesen (48% der Datei)
-200 Profile gelesen (96% der Datei)
-212 Profile gelesen (100% der Datei)
-->Lese Wasserstände
-100 Wasserstände gelesen (85% der Datei)
-145 Wasserstände gelesen (100% der Datei)
-->Interpoliere Profile
-50 von 234 Profilen interpoliert
-100 von 234 Profilen interpoliert
-150 von 234 Profilen interpoliert
-200 von 234 Profilen interpoliert
-234 von 234 Profilen interpoliert
-->Interpoliere Wasserstände
-100 von 342 fehlenden Wasserstände interpoliert
-200 von 342 fehlenden Wasserstände interpoliert
-300 von 342 fehlenden Wasserstände interpoliert
-\end{verbatim}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsubsection{Datei Protokoll}\label{subsubsec:file-prot}
-
-Während der Generierung wird der Fortschritt kontinuierlich zusäzlich
-zu einer Fortschrittsdatei, auch in einer Protokolldatei festgehalten,
-in der Warnungen und Fehler gespeichert werden, so dass der Benutzer
-nach dem Lauf überprüfen kann, ob alles zu seiner Zufriedenheit
-erledigt werden konnte oder es Probleme gegeben hat.
-
-Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
-Sollte es also Fehler oder Warnungen gegeben haben, die der Benutzer
-nicht ignorieren will, so muss er die Eingabedaten oder Parameter
-ändern und einen erneuten Lauf starten. Die Meldungen werden aber
-so aussehen, dass sie dem Benutzer optimale Hinweise für sein
-weiteres Vorgehen liefern.
-
-Wenn eine sinnvolle Shape-Datei erzeugt werden konnte (keine Fehler),
-so kann in einer GUI die weitere Visualisierung stattfinden.
-
-Format Beschreibung:
-
-Die Protokolldatei wird von dem Programm WSPLGEN nur
-geschrieben, wenn es Warnungen oder sogar Fehler im Programm gab.
-
-Die Protokolldatei sollte dem Benutzer immer nach dem Lauf von WSPLGEN
-angezeigt werden, wenn sie existiert und Warnungen oder Fehler enthält.
-
-Format Beispiel:
-\begin{verbatim}
-->Warnung:
-Für die Station 123 wurde der Wasserstand doppelt definiert
-(Wasserstände: 123,34 und 123,45).
-Es wurde der Waserstand 123,34 verwendet.
-->Warnung:
-Der Wasserstand bei Profil 145 ist kleiner als
-alle Geländehöhe im DGM entlanfg dieses Profiles.
-->Fehler:
-Für das Profil 23432 wurde kein Wasserstand definiert und
-es könnte auch keine Wasserstand interpoliert werden,
-da es kein Nachfolgeprofil mit einer höheren Stationsnummer gibt.
-\end{verbatim}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Zusammenfassung}
-
-Das Programm WSPLGEN kommuniziert nur über die Kommandozeile und
-verschiedene Ein- und Ausgabedateien mit der GUI. Bei fehlerfreier
-Ausführung wird eine Ausgabdatei im Shapeformat erzeugt, die Polygone
-enthält, die Bereiche gleicher Wassertiefe repräsentieren. In jedem
-Fall wird eine Fortschrittsdatei erzeugt, die den Bearbeitungsstand
-des Programmes dokumentiert und eine Protokolldatei angelegt, in der
-alle Meldung (Warnungen und Fehler) stehen, die für den Anwender hilfreich
-sein können, wenn er mit der Arbeit des Programmes nicht zufrieden ist.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\begin{appendix}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Parameter}\label{sec:parameter}
-
-\begin{tabular}{|l|p{3.3cm}|p{2.6cm}|p{2.6cm}|p{4.4cm}|}\hline
-Parameter & Argumente & Typ & Einheit & Standardwert\\\hline
-PAR & Parameter-Datei & Pfadangabe & - & keiner - $<$optional$>$ \\\hline
-DELTA & VON\newline BIS\newline DIFF & Kommazahl \newline Kommazahl \newline Kommazahl & Meter\newline Meter\newline Meter & 0\newline Maximaler Wasserstand\newline (BIS - VON) / 10 \\\hline
-GEL & SPERRE & Auswahl & SPERRE \newline NOSPERRE & SPERRE \\\hline
-DGM & DGM-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
-PRO & Profil-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
-WSP & WSP-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
-LIN & Linien-Datei & Pfadangabe & - & keiner - $<$optional$>$ \\\hline
-AUSGABE & Ausgabe-Datei & Pfadangabe & - & WSPLGEN.SHP \\\hline
-PROT & Protokol-Datei & Pfadangabe & - & WSPLGEN.STA \\\hline
-FORT & Fortschritts-Datei & Pfadangabe & - & WSPLGEN.LOG \\\hline
-\end{tabular}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Fehlermeldungen}\label{sec:fehlermeldungen}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Kein Fehler}
-
-Rückgabewert 0
-
-Fehlermeldung: Keine
-
-Beschreibung: Es hat weder Fehler noch Warnungen gegeben.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Fehlergruppe Parameterauswertung: 1xxx}
-
-Rückgabewert: 1101
-
-Fehlermeldung: Unbekannter Parameter
-
-Beschreibung: Es wurde ein Parameter verwendet, der dem Programm WSPLGEN unbekannt ist.
-
-Rückgabewert: 1202
-
-Warnung: Mehrfach verwendeter Parameter
-
-Beschreibung: Es wurde ein Parameter mehrfach verwendet. Es wird nur das erste Auftreten berücksichtigt.
-Es wird immer zuerst die komplette Kommandozeile bearbeitet, bevor die Parameterdatei ausgewertet wird.
-Diese Warnung kann leicht vorkommen, wenn ein Parameter sowohl auf der Kommandozeile angegeben wird,
-als auch in der Parameterdatei vorkommt.
-
-Rückgabewert: 1103
-
-Fehlermeldung: Argument fehlt
-
-Beschreibung: Es wurde kein Argument für einen Parameter angegeben. Das Gleichheitszeichen oder
-die Argumente nach dem Gleichheitszeichen fehlen. Möglicherweise wurden zuviele oder
-ungeschützte Leerzeichen verwendet (siehe Abschnit~\ref{subsec:param}.
-
-Rückgabewert: 1204
-
-Warnung: Parameter DELTA ohne Argumente aufgerufen
-
-Beschreibung: Der Parameter DELTA kann auch ohne Parameter aufgerufen werden. Es werden dann nur
-Standardwerte für alle drei Argemente verwendet. Wenn dies gewünscht ist, bracht der Parameter
-überhaupt nicht angegeben zu werden. Das er doch gefunden wurde, könne an einer falschen Aufrufsyntax liegen.
-Es könnte das Gleichheitszeichen fehlen oder es könnten zuviele Leerzeichen eingefügt worden sein.
-
-Rückgabewert: 1205
-
-Fehlermeldung: VON ist kleiner als BIS
-
-Erklärung: Das Argument VON ist größer als das Argument BIS. Die Reihenfolge der Argumente
-wurde wahrscheinlich nicht beachtet. Zuerst kommt VON, dann BIS, dann DIFF.
-
-Rückgabewert: 1206
-
-Fehlermeldung: DIFF ist kleiner als 0
-
-Erklärung: Das Argument DIFF muss immer größer gleich 0 sein.
-
-Rückgabewert: 1207
-
-Fehlermeldung: DIFF ist gleich 0, aber VON und BIS sind verschieden.
-
-Erklärung: Das Argument DIFF darf nur den Wert 0 haben, wenn VON und BIS gleich sind. Sind VON und BIS verschieden,
-so wäre eine Abstufung in Schitten zu 0 Metern sinnlos.
-
-Rückgabewert: 1208
-
-Warnung: DIFF ist größer als die Differenz von BIS und VON
-
-Erklärung: DIFF wird vom Programm ignoriert und nur eine Wasserstandsisolinie mit dem Wert VON generiert.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\subsection{Fehlergruppe Dateifehler: 2xxx}
-
-Rückgabewert: 2101
-
-Warnung: Eine Eingabedatei könnte nicht zum Lesen geöffnet werden.
-
-Erklärung: WSPLGEN hta versucht eine Eingabedatei zum Lesen zu öffnen, was nicht funktioniert hat.
-Die wahrscheinlichsten Ursachen sind, dass die angegebene Datei nicht existiert (also der Dateipfad
-falsch ist) oder das Programm (bzw. der Benutzer) nicht genug Rechte hat die Datei zum Lesen zu öffnen.
-
-
-Rückgabewert: 2102
-
-Warnung: Einem Profil wurden verschiedene Wasserstände zugewiesen
-
-Erklärung: Es wurdem einem Profil verschiedene Wasserstände zugewisen.
-Es wird nur der zuerst gelesene Wasserstand verwendet.
-
-
-Rückgabewert: 2103
-
-Fehler: Für ein Profil konnte kein Wasserstand interpoliert werden.
-
-Erklärung: Für ein Profil konnte kein Wasserstand interpoliert werden,
-da entweder keinen Wasserstand stromab und/oder kein Wasserstand stromauf
-dieses Profils bekannt ist. Der wahrscheinlichste Grund ist, dass die
-Berechnungsergebnisse und die Profile nicht zusammengehören.
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\end{appendix}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\end{document}
-
-
+%
+% $Id$
+%
+\documentclass[12pt,german]{scrartcl}
+
+%----------------------------------------------
+% Load packages
+
+\usepackage{a4}
+\usepackage{times}
+\usepackage[latin1]{inputenc}
+\usepackage{fancyhdr}
+\usepackage{german}
+%\usepackage[marvosym]{eurofont}
+%\usepackage[all, light]{draftcopy}
+%\usepackage{supertabular}
+%\usepackage{colortbl}
+%\usepackage{epsf}
+\usepackage{graphicx}
+\usepackage{lastpage}
+%\usepackage{proposal}
+
+
+%----------------------------------------------
+% Document DATE and VERSION
+% set these values when releasing a new version
+
+% Clearunderscore is a workaround when dealing with filenames with underscores.
+%\def\cleanunderscore#1_#2{\expandafter #1\_#2}
+%\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{\cleanunderscore#2}}
+% EDIT HERE
+\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}}
+\RCS$Id$
+\RCS$Revision$
+
+\newcommand{\documentdate}{05. Januar 2006}
+\newcommand{\documentrevision}{\RCSRevision}
+\newcommand{\documentversion}{0.5.1}
+\newcommand{\documentID}{\RCSId}
+%----------------------------------------------
+
+%----------------------------------------------
+% Document TITLE
+\newcommand{\documenttitle}{WSPLGEN, Technisches Feinkonzept}
+
+
+%----------------------------------------------
+% Ein paar Einstellungen die das Layout beeinflussen
+
+\paperwidth=21cm
+\hoffset=-0.54cm
+\textwidth=17cm
+
+\paperheight=29.7cm
+\voffset=-1.5cm
+\topmargin=0cm
+\headheight=1cm
+\textheight=24cm
+
+\setcounter{secnumdepth}{4}
+\setcounter{tocdepth}{4}
+
+%----------------------------------------------
+% Nun gehts es wirklich los
+
+\begin{document}
+
+%-----------------------------------
+% HEADER/FOOTER DEFINITION
+
+% for some pages latex switches back to pagestyle plain :-(
+\fancypagestyle{plain}{%
+ \fancyhf{} % clear all header and footer fields
+ \fancyhead[LO,RE]{\footnotesize \documenttitle\\ \leftmark}
+ \fancyfoot[RO,LE]{\footnotesize S-L-F GmbH} % Author
+ \fancyfoot[CO,CE]{\footnotesize \thepage/\pageref{LastPage}}
+ \fancyfoot[LO,RE]{\footnotesize \documentdate
+ \\\documentID}
+ \renewcommand{\footrulewidth}{0.4pt}
+}
+
+% and now define pagestyle fancy
+\fancyhead{} % clear all fields
+\fancyhead[LO]{\footnotesize \documenttitle\\ \leftmark}
+
+\fancyfoot{}% clear all fields
+\fancyfoot[RO]{\footnotesize S-L-F GmbH} % Author
+\fancyfoot[CO]{\footnotesize \thepage/\pageref{LastPage}}
+\fancyfoot[LO]{\footnotesize \documentdate
+\\\documentID}
+
+\renewcommand{\footrulewidth}{0.4pt}
+
+%
+% END Header/Footer Definition
+%-----------------------------------
+
+%----------------------------------------------
+% MACRO DEFINITION
+%
+% \Fig{figure}{lof text}{caption} :
+% places 'figure' and
+% writes 'caption' at the bottom with leading
+% 'Abbildung figno:'. 'lof text' is added to the list of
+% figures.
+% Example:
+% \Fig{\epsfxsize30mm \epsffile{x.eps}}{the x}{the x}
+%
+% \FigNoEntry{}{} :
+% same as above, no entry in figures list
+%
+% \FigCaption{} :
+% line with figure caption, setting figure
+% counter and figures list
+%
+% \Tab{table}{lot text}{caption} :
+% places 'table' and writes caption on top of the table
+% with leading 'Tabelle tabno:'. 'lot text' is added to
+% the list of tables.
+%****************************************************************************
+% Figure makro for graphics continously enumerated.
+%
+
+\newcounter{FigCnt}
+\newcounter{TabCnt}
+
+\newcommand{\Fig}[3]%
+{
+ \refstepcounter{FigCnt}
+ \addcontentsline{lof}{figure}%
+ {\protect\numberline{\arabic{FigCnt}}{#2}}
+ \mbox{#1}
+
+\nopagebreak
+ {Abbildung \arabic{FigCnt}: #3}
+
+}
+
+\newcommand{\FigNoEntry}[2]%
+{
+ \refstepcounter{FigCnt}
+ \mbox{#1}
+
+\nopagebreak
+ {Abbildung \arabic{FigCnt}: #2}
+
+}
+
+\newcommand{\FigCaption}[1]%
+{
+ \refstepcounter{FigCnt}
+ \addcontentsline{lof}{figure}%
+ {\protect\numberline{\arabic{FigCnt}}{#1}}
+
+ %{Figure \thesection.\arabic{FigCnt}: #1}
+}
+
+\newcommand{\Tab}[3]%
+{
+ \refstepcounter{TabCnt}
+ \addcontentsline{lot}{figure}%
+ {\protect\numberline{\arabic{TabCnt}}{#2}}
+ {Tabelle \arabic{TabCnt}: #3}
+\nopagebreak
+ #1
+
+}
+
+\hyphenation{Intevation}
+% end macro definition
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcounter{schritt}
+\renewcommand{\theschritt}{\Roman{schritt}}
+%\makeatletter\renewcommand{\p at schritt}{Abschnitt~\thesubsubsection~}\makeatother
+
+%-----------------------------------
+% DOCUMENT SETTINGS
+\pagestyle{fancy}
+\setlength{\parindent}{0cm}
+\setlength{\parskip}{5pt plus 2pt minus 1pt}
+
+
+%-----------------------------------
+% TITLE PAGE
+
+{
+ \makebox[5cm][l]{\includegraphics[height=3cm]{abbildungen/slf-logo.eps}}\hspace{5cm}\makebox[5cm][l]{\includegraphics[height=3cm]{abbildungen/intevation-logo.eps}}\\
+ \makebox[5cm][l]{\tt http://s-l-f.de}\hspace{5cm}\makebox[5cm][l]{\tt http://intevation.de}
+}
+
+\vspace{4cm}
+
+{
+ \sffamily\large
+ WSPLGEN (\textbf{W}asser \textbf{SP}iegel\textbf{L}agen \textbf{GEN}erator)
+
+ \vspace{1cm}
+ {
+ \bfseries\huge
+ Feinkonzept
+ }
+
+ \vspace{1cm}
+ Version \documentversion~-~Datum: \documentdate
+
+ Revision \documentrevision
+}
+
+\vspace{4cm}
+
+\thispagestyle{empty}
+
+\vfill
+
+\begin{flushleft}
+Autor WSPLGEN:\\
+Ulrich Kiel $<$u.kiel at S-L-F.de$>$\\
+STADT-LAND-FLUSS INGENIEURDIENSTE GmbH,\\
+Auf dem Hollen 12, 30165 Hannover\\
+Tel: 0511/353196-02, Fax: 0511/353196-09
+
+\vspace{0.5cm}
+Qualitätssicherung:\\
+Intevation GmbH, Georgstraße 4, 49074 Osnabrück\\
+Tel: 0541/33508-30, Fax: 0541/33508-59
+\end{flushleft}
+
+
+\newpage
+% the title page ends here.
+{
+\tableofcontents
+%
+\listoffigures
+%
+%\listoftables
+%EDIT HERE
+\markboth{Inhaltsverzeichnis}{Inhaltsverzeichnis}
+}
+% START YOUR DOCUMENT HERE!
+
+
+\newpage
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Allgemeines}
+
+Das Programm WSPLGEN soll dazu dienen, Dateien im ESRI
+Shape Format zu erzeugen, um eine flächige Darstellung der Ergebnisse
+eindimensionaler mathematischer Modelle zur Berechnung von
+Wasserständen zu ermöglichen.
+
+Das Programm WSPLGEN wird als eigenständiges Programm realisiert.
+Es kann dann von Bedieneroberflächen (Graphic-User-Interfaces, GUIs)
+aufgerufen werden und liefert seine
+Ergebnisse in verschiedenen Dateien für die anschließende Visualisierung.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Vorgehensweise}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}
+\subsubsection{Schritt \theschritt ~-~Auswertung der Kommandozeilenparameter}
+
+Als erstes werden von WSPLGEN die Kommandozeilenparameter ausgewertet.
+Sollte das Programm hierbei unbekannte Optionen oder ungültige
+Argumente zu den Optionen finden, so wird ein Fehler generiert
+(siehe Abschnitt~\ref{subsubsec:file-prot} und Abschnitt~\ref{sec:fehlermeldungen}).
+Werden Optionen mehrfach verwendet (z.B. bei der Angabe einer Option in der
+Kommandozeile und gleichzeitiger Verwendung der gleichen Option in der
+Parameterdatei (siehe Abschnitt \ref{subsubsec:param-par}), so wird
+nur das erste Auftreten in der Kommandozeile berücksichtigt und eine Warnung
+generiert (siehe Abschnitt~\ref{subsubsec:file-prot} und Abschnitt~\ref{sec:fehlermeldungen}).
+Die zulässigen Kommandozeilenoptionen und ihre Argumente werden im
+Abschnitt~\ref{subsec:param} und im Anhang~\ref{sec:parameter} beschrieben.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}\label{schritt:einlesen}
+\subsubsection{Schritt \theschritt~-~Einlesen der Eingabedaten}\label{subsubsec:schritt-einlesen}
+
+Die wichtigsten Kommandozeilenparameter bestimmen, welche Dateien das Programm
+einlesen soll und in welche Dateien es die Ausgaben schreiben soll.
+Wird das Programm angewiesen eine Datei zu lesen, die nicht existiert, die
+aus einem anderen Grund (z.B. ungenügende Rechte) nicht gelesen werden kann
+oder die in einem unbekannten oder fehlerhaften Format vorliegt, so wird
+eine Fehlermeldung generiert (siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\paragraph{Digitales Geländemodell (DGM)}
+
+\verb; ;
+
+WSPLGEN liest zuerst ein digitales Geländemodell (DGM) ein, das durch seine Größe
+auch gleichzeitig die maximal mögliche Ausdehnung des Ergebnisses festlegt.
+Das DGM muss für die weitere Bearbeitung als vermaschtes Netz vorliegen.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_netz.eps}}{Ein ganz kleiner Ausschnitt aus einem DGM als vermaschtes Netz}{Ausschnitt eines DGM als vermschtes Netz}
+\end{center}
+
+Die verschiedenen möglichen Formate des DGM werden in Abschnitt~\ref{subsubsec:file-dgm}
+genauer spezifiziert. Wird ein Format für das DGM gewählt, das kein vermaschtes Netz
+darstellt (z.B. eine ASCII-Datei mit X,Y,Z-Tripeln), so wird nach dem Einlesen der Punkte
+eine automatische Triangulierung durchgeführt (siehe Schritt~\ref{schritt:triang} in Abschnitt~\ref{subsubsec:schritt-triang}).
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{Gewässerquerprofile}
+
+\verb; ;
+
+Als nächstes wird die Lage der Gewässerquerprofile eingelesen.
+Die Gewässerquerprofile müssen so lang sein, dass an ihren Enden eine Geländehöhe
+im DGM vorhanden ist, die sicher höher liegt, als die Wasserstände, die den Profilen
+zugeordnet werden sollen.
+
+Zwischen dem ersten und dem letzten Punkt eines Querprofils können beliebig viele
+Knickpunkte liegen, um die Lage der Querprofile aus hydraulischer Sicht sinnvoll
+festlegen zu können.
+
+Als ein Attribut müssen die Gewässerquerprofile eine nummerische Gewässerstationierung
+aufweisen, die es ermöglicht den Querprofilen Wasserstände zuzuweisen, die für verschiedene
+Punkte im Gewässer vorliegen und die es ermöglicht Stationierungen zwischen zwei Querprofilen
+zu interpolieren.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_profil.eps}}{Lage von drei Gewässerquerprofilen}{Gewässerquerprofile}
+\end{center}
+
+Das Format der Querprofile wird in Abschnitt~\ref{subsubsec:file-profile}
+genauer spezifiziert.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{Wasserstände}
+
+\verb; ;
+
+Als nächstes werden die Wasserstände eingelesen, die den Gewässerquerprofilen
+zugeordnet sind. Sollte einem Gewässerquerprofil kein Wasserstand
+direkt zugeordnet werden können, so wird versucht, einen Wasserstand linear
+aus stromauf und stromab liegenden Wasserständen zu interpolieren. Sollte
+dies nicht möglich sein, weil entweder kein stromauf oder kein
+stromab liegender Wasserstand definiert wurde, so wird eine Fehlermeldung
+generiert (siehe Abschnitt~\ref{subsubsec:file-prot}) und das Programm beendet.
+
+Es kann immer nur ein Wasserstand pro Profil verwendet werden. Sollten doch
+mehrere Wasserstände einem Profil zugeordnet sein, so wird nur der erste
+Wasserstand verwendet und eine entsprechende Warnung generiert
+(siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{Sperren und Brüche (optional)}
+
+\verb; ;
+
+Um sowohl Brüche als auch den Neubau von Hochwasserschutzdämmen simulieren
+zu können ohne das DGM verändern zu müssen, ist es möglich, eine weitere
+Datei mit Linien im ESRI SHAPE-Format einzulesen.
+
+In dieser Datei muss allen Polylinien ein Attribut zugeordnet
+sein. Dieses Attribut bestimmt, ob es sich bei einer Linie um eine
+,,Sperre'' handelt (Wert \verb;SPERRE;), also Wasser diese Linie
+nicht übersteigen kann, oder ob es sich um einen ,,Bruch'' handelt
+(Wert \verb;BRUCH;), also Wasser in jedem Fall entlang der
+Linie transportiert wird.
+
+,,Sperren'' bzw. ,,Brüche'' können nicht zusammen mit der Option \verb;-GEL=NOSPERRE;
+verwendet werden (siehe Abschnitt~\ref{subsubsec:param-gel}.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\refstepcounter{schritt}\label{schritt:triang}
+\subsubsection{Schritt \theschritt~-~Triangulierung (optional)}\label{subsubsec:schritt-triang}
+
+Wird das DGM nicht in einem Format zur Verfügung gestellt, das ein
+vermaschtes Netz repräsentiert, sondern nur unabhängige Knoten, so wird
+von WSPLGEN ein vermaschtes Netz erzeugt.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}\label{schritt:verdichten}
+\subsubsection{Schritt \theschritt~-~Verdichtung der Wasserstände}\label{subsubsec:schritt-verdichten}
+
+Es wird von sinnvoll geknickten Querprofilen ausgegangen, die
+ein lineares Interpolieren von zusätzlichen Querprofilen zwischen
+den verhandenen Querprofilen ermöglichen.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_interpolierte_profile.eps}}{Konstruktion und Lage der interpolierten Profile}{Interpolierte Profile}
+\end{center}
+
+Als sinnvoller Wert für den Abstand der zu interpolierten
+Querprofile, wird der mittlere Abstand der Knoten im DGM benutzt.
+Wenn das DGM also großmaschig ist, werden weniger Profile interpoliert,
+als wenn das DGM feinmaschiger ist.
+
+Für jedes interpolierte Profil wird ein zugehöriger Wasserstand aus den
+Wasserständen ermittelt, die den Profilen zugewiesen wurden, die auch
+für die Interpolation der Lage der interpolierten Profile dienten.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_interpolierte_wsp.eps}}{Vorgegebene und interpolierte Wasserstände}{Interpolierte Wasserstände}
+\end{center}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}\label{schritt:uebertragen}
+\subsubsection{Schritt \theschritt~-~Übertragung der Wasserstände auf das DGM}\label{subsubsec:schritt-uebertragen}
+
+Nachdem für eine ausreichende Zahl von Profilen die Wasserstände festgelegt wurden,
+werden die Wasserstände auf das DGM übertragen. Dabei wird versucht jedem Punkt des DGM,
+einen interpolierten Wasserstand zuzuordnen, der sich aus den Wasserständen ergibt,
+die den Profilen zugeordnet wurden, die dem DGM-Punkt am dichtesten sind. Hierbei
+wird für die Interpolation das \textit{Inverse-Distance Verfahren} mit maximal
+vier Punkten angewendet, wobei jeder Punkt aus einem anderen Quadranten stammen muss.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_zugewiesene_wsp.eps}}{Zuordnung der Wasserstände zu den Punkten des DGM}{Zuordnung der Wasserstände}
+\end{center}
+
+Liegen die 4 Punkte aller 4 Quadraten außerhalb des Suchradiusses
+(maximaler Abstand der interpolierten Profile), so wird keine Zuordnung durchgeführt.
+Um die Profile ausreichend zu berücksichtigen, werden wenn nötig weitere Punkte in die
+Profile eingefügt, die natürlich auch den Wasserstand des Profils zugewiesen bekommen.
+
+Die Zuordnung erfolgt auch nur dann, wenn die Geländehöhe des DGM niedriger als der
+Wasserstand ist, der zugeordnet werden soll. Auf diese Weise wird bereits eine
+erste Klassifizierung in nasse oder trockene Punkte durchgeführt.
+
+Ab diesem Schritt spielt die Lage der Profile keine Rolle mehr.
+
+Wenn eine Datei mit Brüchen angegeben wird, so werden jetzt zusätzlich
+noch die Polylinien, die in der entsprechenden Datei als Brüche gekennzeichnet sind,
+ausgewertet. Dazu wird für den ersten Punkt der Linie ein Wasserstand aus den umliegenden
+Profilen wie für einen DGM-Punkt interpoliert und dieser Wasserstand entlang der gesamten Bruchlinie
+angenommen. Anschließend wird allen DGM-Punkten, die dichter als der Suchradius von der Bruchlinie
+entfernt sind, dieser Wasserstand zugewiesen, wenn ihre Geländehöhe niedriger als dieser Wasserstand ist.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_zugewiesene_wsp_bruch.eps}}{Zuordnung der Wasserstände zu den Punkten des DGM entlang einer Bruchlinie}{Zuordnung entlang einer Bruchlinie}
+\end{center}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}\label{schritt:extrapolation}
+\subsubsection{Schritt \theschritt~-~Extrapolation der Wasserstände}\label{subsubsec:schritt-extrapolation}
+
+Die Extrapolation der Wasserstände, die auf das DGM übertragen wurden,
+erfolgt iterativ entlang der verbindenden Kanten zwischen den Knoten
+des DGM (vgl. Schritt~\ref{schritt:einlesen} in Abschnitt~\ref{subsubsec:schritt-einlesen}).
+
+Bei jeder Iteration werden alle Kanten bestimmt, die einen nassen Knoten und einen Knoten
+ohne Wasserstand verbinden. Danach wird bei der kürzesten Kante beginnend der Wasserstand
+des nassen Knoten auf den bisher undefinierten Knoten übertragen,
+falls diesem inzwischen noch kein Wasserstand zugewiesen wurde.
+Die Zuweisung wird auch durchgeführt, wenn die Höhe des Knoten größer als der ihm zugewiesene Wasserstand ist.
+Der Knoten würde im Folgenden als trockener Knoten zählen und nicht weiter berücksichtigt werden.
+
+Sind alle ermittelten Kanten bearbeitet, so wird diese Iteration so lange wiederholt, bis keine
+Kanten mehr gefunden werden, die das geforderte Kriterium erfüllen.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_extrapolierter_wsp.eps}}{Extrapolation der Wasserstände zu den Punkten des DGM}{Extrapolation der Wasserstände}
+\end{center}
+
+Wenn eine Datei mit Sperren angegeben wird, so werden vor dem Beginn der Extrapolation
+alle Kanten des DGM entfernt, die als Sperren gekennzeichnete Polylinien schneiden
+(siehe Abschnitt~\ref{subsubsec:file-sperr}). Durch dieses Löschen können Wasserstände die
+Sperre nicht überwinden.
+
+\begin{center}
+\Fig{\includegraphics[width=10cm,keepaspectratio]{abbildungen/abb_extrapolierter_wsp_sperre.eps}}{Extrapolation der Wasserstände zu den Punkten des DGM mit Sperre}{Extrapolation der Wasserstände mit Sperre}
+\end{center}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}\label{schritt:isolinien}
+\subsubsection{Schritt \theschritt~-~Generierung der Isolinien gleicher Wasserstände}\label{subsubsec:schritt-isolinien}
+
+In diesem Schritt brauchen nur die Kanten ermittelt zu werden, die einen nassen
+und einen trockenen Knoten verbinden. Es wird für jede dieser Kanten der Punkt bestimmt,
+an dem die Wassertiefe gleich Null ist. Alle so ermittelten Punkte werden verbunden
+und ergeben die gewünschte Isolinie.
+
+Um die gewünschten Abstufungen zu erreichen (vgl. Abschnitt~\ref{subsubsec:param-delta}), werden
+die Geländehöhen des DGM schrittweise um die gewünschte Schrittweite \verb;<Diff>; angehoben
+und die Schritte~\ref{schritt:extrapolation} und \ref{schritt:isolinien} so lange
+wiederholt, bis die gewünschte maximale Wassertiefe erreicht ist. Ist die Startwassertiefe
+\verb;<Von>; größer als Null, so wird dieses Anheben bereits einmal vor Schritt~\ref{schritt:extrapolation}
+durchgeführt.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\refstepcounter{schritt}
+\subsubsection{Schritt \theschritt~-~Schreiben der Ausgabedaten}
+
+Nachdem intern die Polygone gebildet wurden, die die verschiedenen Wassertiefen repräsentieren,
+werden sie in eine Ergebnisdatei geschrieben, die über die Kommandozeile mit dem Parameter \verb;-ERG;
+definiert wurde (siehe Abschnitt~\ref{subsubsec:param-ausgabe}). Wird der Parameter nicht angegeben,
+so wird die Datei WSPLGEN.SHP erzeugt (siehe Abschnitt~\ref{subsubsec:param-ausgabe}).
+Das Format der Ausgabedatei wird genauer in Abschnitt~\ref{subsubsec:file-ergebnisse} beschrieben.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Eingabedaten}
+
+Die Eingabedaten werden in der grafischen Bedieneroberfläche definiert und
+per Kommandozeilenparameter oder Parameterdatei und über verschiedene
+Eingabedateien an das Programm WSPLGEN übergeben. Eine erste Überprüfung
+auf Vollständigkeit und Sinnhaftigkeit sollte in der GUI erfolgen, da WSPLGEN
+bei den meisten Problemen nur einen Fehler generiert
+(siehe Abschnitt~\ref{subsubsec:file-prot}) oder Standardwerte benutzt,
+die nicht immer den eigentlichen Willen des Benutzers wiedergeben. Beim
+Verwenden von Standardwerten wird in jedem Fall eine Warnung generiert und
+in die Protokolldatei geschrieben (siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Kommandozeilen Parameter}\label{subsec:param}
+
+Jeder Parameter beginnt mit einem Leerzeichen gefolgt von dem Zeichen '\verb;-;' und
+seinem Namen. Falls dem Parameter Argumente folgen sollen, so muss als nächstes Zeichen
+ein '\verb;=;' folgen. Danach kommt die durch Komma getrennte Liste der Argumente. Da das
+Komma hier als Trennzeichen dient, darf es nicht ungeschützt in den Argumenten verwendet
+werden. Der Schutz des Zeichens wird durch das Einschließen eines Arguments durch das
+Zeichen '\verb;";' erreicht (z.B. \verb;-PAR="C:\Eigene Dateien\WSPLGEN\Job.PAR";).
+Auch die Verwendung von Leerzeichen in Argumenten (z.B. Pfadangaben) ist so möglich.
+
+Optional können die folgenden Parameter zur Feinsteuerung der
+Arbeitsweise von WSPLGEN übergeben werden:
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -PAR (Parameterdatei)}\label{subsubsec:param-par}
+
+Die Option \verb;-PAR; bestimmt, ob weitere Parameter in einer Parameterdatei enthalten sind.
+
+Da die Eingabe von Kommandozeilen über Windows einer Längenbeschränkung unterliegt,
+was in Kombination mit langen Pfadnamen leicht zu Problemen führen kann, wird auch die
+Zusammenfassung aller Parameter in einer Parameterdatei vorgesehen.
+Wird sie verwendet, wird zunächst die Kommandozeile weiter ausgewertet
+und danach zusätzlich weitere Parameter in der Parameterdatei berücksichtigt.
+
+In jeder Zeile dieser Datei würde dann ein Parameter stehen, der vom
+Aufbau genau den Anforderungen entspricht, wie sie auch direkt auf
+der Kommandozeile bestehen.
+
+Der Name der Parameterdatei wäre dann das einzige Argument der Option \verb;-PAR;.
+
+Format: \verb;-PAR=<Pfad>;
+
+Beispiel: \verb;-PAR=C:\TEMP\WSPLGEN.PAR;
+
+Standardwert: Keiner
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -DELTA (Abstufungen der Wassertiefen)}\label{subsubsec:param-delta}
+
+Die Option \verb;-DELTA; bestimmt, in welchen Abstufungen die Wassertiefenpolygone
+generiert werden sollen, die Isolinien gleicher Wassertiefe repräsentieren.
+Die entsprechenden Wassertiefen werden aus den Argumenten \verb;<Von>;, \verb;<Bis>; und \verb;<Diff>;
+gebildet.
+
+Begonnen wird mit der Wassertiefe \verb;<Von>; (die nicht negativ sein darf). Danach wird die
+Wassertiefe solange um den Wert von \verb;<Diff>; erhöht, bis sich eine Wassertiefe größer als \verb;<Bis>; ergibt.
+
+Wird das Argument \verb;<Von>; ausgelassen (das Komma wird dann das erste Zeichen hinter dem Gleichheitszeichen), wird für \verb;<Von>;
+der Wert 0,00 angenommen.
+
+Wird das Argument \verb;<Bis>; ausgelassen (es gibt dann zwei Kommata hintereinander), wird der
+maximale Wert der ermittelten Wasserstiefen für \verb;<Bis>; angenommen.
+
+Wird das Argument \verb;<Diff>; ausgelassen (das Komma wird dann zum letzten Zeichen dieses Parameters),
+wird für \verb;<Diff>; die auf zwei Nachkommastellen gerundete und durch 10 geteilte Differenz
+zwischen \verb;<Bis>; und \verb;<Von>; angenommen.
+
+Man kann auch ganz auf den Parameter verzichten, was dem Ausruf \verb;-DELTA=,,; entspricht.
+
+Format: \verb;-DELTA=[<Von>],[<Bis>],[<Diff>];
+
+Beispiel: \verb;-DELTA=1.0,2.0,0.25;
+
+In diesem Beispiel werden die Isolinien für 5 verschiedene Wassertiefen
+erzeugt (1,00, 1,25, 1,50, 1,75 und 2,00).
+
+Beispiel: \verb;-DELTA=0.9,2.1,0.25;
+
+Auch in diesem Beispiel werden die Isolinien für 5 verschiedene Wassertiefen
+erzeugt (0,90, 1,15, 1,40, 1,65 und 1,90), da der nächste Schritt 2,15 größer
+als 2,10 ist.
+
+Beispiel: \verb;-DELTA=,1.0,0.25;
+
+In diesem Beispiel werden die Isolinien für 5 verschiedene Wassertiefen
+erzeugt (0,00, 0,25, 0,50, 0,75 und 1,00).
+
+Beispiel: \verb;-DELTA=,,0.25;
+
+Ist die größte Wassertiefe z.B. 2,345, so werden die Isolinien für 10 verschiedene Wassertiefen
+erzeugt (0,00, 0,25, 0,50, 0,75, 1,00, 1,25, 1,50, 1,75, 2,00 und 2,25) erzeugt.
+
+Beispiel: \verb;-DELTA=1.3,,;
+
+Ist die größte Wassertiefe z.B. 2,345, so werden die Isolinien für 11 verschiedene Wassertiefen
+(1,3, 1,4, 1,5, 1,6, 1,7, 1,8, 1,9, 2,0, 2,1, 2,2 und 2,3) erzeugt, da die Differenz von
+2,345 und 1,3 den Wert 1,045 ergibt und damit ein Wert von 0,10 für \verb;<Diff>; verwendet wird.
+
+Beispiel: \verb;-DELTA=,,;
+
+In diesem Beispiel werden alle Argumente automatisch bestimmt.
+
+Standardwert: Siehe oben
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -GEL (Einfluss von Geländeerhebungen)}\label{subsubsec:param-gel}
+
+Die Option \verb;-GEL; bestimmt, ob die Wasserstände durch Geländeerhebungen
+hindurch getragen werden sollen. Dies würde ein potenziel gefährdetes Gebiet im Hinterland
+produzieren, in dem der Wasserstand in etwa den Gradienten des Flusses aufweisen würde
+(keine sinnvolle Wiedergabe von eingestauten Flächen). Eine
+Kombination mit den Daten aus Abschnitt~\ref{subsubsec:param-lin} ist nicht sinnvoll und sollte in der GUI
+verhindert werden. Wird der Parameter mit ,,Sperren'' bzw. ,,Brüchen'' angegeben und das Argument
+des Parameters \verb;-GEL; ist SPERRE, wird eine Fehler generiert (siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+Wird der Parameter \verb;-GEL; nicht angegeben, so wird der Wert \verb;SPERRE; angenommen.
+Es wird dann also mit Einstau gearbeitet.
+
+Format: \verb;-GEL=<SPERRE|NOSPERRE>;
+
+Beispiel: \verb;-GEL=NOSPERRE;
+
+Standardwert: \verb;SPERRE;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -DGM (Digitales Geländemodell)}\label{subsubsec:param-dgm}
+
+Mit der Optionen \verb;-DGM; wird bestimmt, mit welcher Datei das DGM definiert wird.
+
+Das Format der Daten wird von dem Programm WSPLGEN selbst erkannt und
+eine Plausibilitätsprüfung des DGM vorgenommen.
+
+Das DGM muss entweder ein Punktthema im SHAPE- oder ASCII-Format sein
+(X,Y,Z-Tripel), ein Grid, wie es vom Spatial Analyst verwendet wird,
+oder ein TIN, wie es der 3D-Analyst verwendet. Vorzuziehen wäre ein
+TIN, da hier die besten Möglichkeiten bestehen, das Gelände korrekt
+wiederzugeben.
+
+Werden dem WSPLGEN nur X,Y,Z-Tripel (Punkt-SHAPE oder ASCII-Datei)
+übergeben, so werden die einzelnen Punkte mit einem einfach
+Triangulierungsalgorithmus vermascht.
+
+Ein Grid, wie es vom Spatial Analyst verwendet wird, sollte die
+letzte Wahl sein. Bedingt durch die rechteckige Form, wird die Datenmenge
+schnell recht groß und Strukturen wie Deiche oder Gräben können kaum
+wiedergegeben werden, da ein Grid immer nur eine rechteckige ,,Vermaschung'' unterstützt.
+
+Format: \verb;-DGM=<Pfad>;
+
+Beispiel: \verb;-DGM=C:\DATEN\WESER\DGM.XYZ;
+
+Standardwert: Keiner
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -PRO (Lage der Querprofile)}\label{subsubsec:param-profile}
+
+Mit der Optionen \verb;-PRO; wird bestimmt, mit welcher Datei die Lage der
+Querprofile definiert wird.
+
+Die Lage der Gewässerquerprofile wird immer als Polylinien-Thema in einer
+Shape-Datei übergeben. Die Profile können dabei beliebige Knicke
+enthalten. Jeder Profilspur ist ein Gewässer bzw. Gewässerbereich und eine
+eindeutige Stationierung zugewiesen (z.B. Weser, 120,230 oder Rheinvorland
+bei Köln, 102,242). Die beiden Angaben sind notwendig, um weitere
+benötigte Profile selbstständig vom Programm WSPLGEN interpolieren zu können.
+Der komplette Pfad der Datei mit den Querprofillagen wird dem Programm
+WSPLGEN mit dem Parameter \verb;-PRO; übergeben. Das Format der Daten
+wird von dem Programm WSPLGEN selbst erkannt und eine Plausibilitätsprüfung der
+Profillagen vorgenommen (z.B. mittlerer Abstand der Profilspuren und
+Differenz der Stationierung)
+
+Format: \verb;-PRO=<Pfad>;
+
+Beispiel: \verb;-PRO=C:\DATEN\WESER\120-129.SHP;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -WSP (Wasserstände)}\label{subsubsec:param-wsp}
+
+Mit der Optionen \verb;-WSP; wird bestimmt, mit welcher Datei die Wasserstände
+definiert werden, die den Querprofilen zugeordnet werden sollen.
+
+Die Wasserstände werden als Tabelle im ASCII- oder DBF-Format übergeben.
+Dabei muss eine eindeutige Zuordnung zu den Gewässerquerprofilen möglich
+sein. Eine Tabelle muss also 3 Spalten (Gewässerbereich, Stationierung
+und Wasserstand) enthalten.
+
+Das Format der Daten wird von dem Programm WSPLGEN selbst erkannt und eine
+Plausibilitätsprüfung der Wasserstände vorgenommen (z.B. Kontinuierliches
+Abnehmen der Wasserstände mit bzw. gegen die Stationierung).
+
+Parameter Format: \verb;-WSP=<Pfad>;
+
+Parameter Beispiel: \verb;-WSP=C:\DATEN\WESER\HQ5-120-129.TXT;
+
+Standardwert: Keiner
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -LIN (Sperren und Brüche)}\label{subsubsec:param-lin}
+
+Mit der Optionen \verb;-LIN; wird bestimmt, mit welcher Datei die ,,Sperren''
+bzw. ,,Durchbrüche'' definiert werden.
+
+Format: \verb;-LIN=<Pfad>;
+
+Beispiel: \verb;-LIN=C:\TEMP\BREAK.SHP;
+
+Standardwert: Keiner
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -AUSGABE (Ausgabedatei)}\label{subsubsec:param-ausgabe}
+
+Als Ausgabedaten generiert das Programm WSPLGEN bei fehlerfreier Ausführung
+eine Shape-Datei, in der Polygone enthalten sind, deren Grenzen Isolinien
+gleicher Wassertiefe repräsentieren (siehe Abschnitt~\ref{subsubsec:file-ergebnisse}). Wird
+dieser Parameter nicht angegeben, so wird als Ausgabedateiname ein Standardwert
+angenommen.
+
+Format: \verb;-AUSGABE=<Pfad>;
+
+Beispiel: \verb;-AUSGABE=C:\TEMP\WSPLGEN.SHP;
+
+Standardwert: \verb;WSPLGEN.SHP;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -FORT (Fortschritt)}\label{subsubsec:param-fort}
+
+Während des Laufs von WSPLGEN wird der akutelle Bearbeitungsstand kontinuierlich in einer
+Fortschrittsdatei aktualisiert, so dass die GUI in der Lage ist,
+ihn anzuzeigen (siehe Abschnitt~\ref{subsubsec:file-fort}).
+
+Format: \verb;-FORT=<Pfad>;
+
+Beispiel: \verb;-FORT=C:\TEMP\WSPLGEN.STA;
+
+Standardwert: \verb;WSPLGEN.STA;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Parameter -PROT (Protokoll)}\label{subsubsec:param-prot}
+
+In einer Protokolldatei werden Warnungen und maximal ein Fehler gespeichert
+(da nach jedem Fehler das Programm sofort beendet wird), so dass der
+Benutzer nach dem Beenden von WSPLGEN überprüfen kann, ob alles zu
+seiner Zufriedenheit erledigt werden konnte oder es Probleme gegeben hat.
+(siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
+Sollte es also einen Fehler oder Warnungen gegeben haben, die der Benutzer
+nicht ignorieren will, so muss er die Eingabedaten oder Parameter
+ändern und einen erneuten Lauf starten. Die Meldungen sind aber
+so aussagekräftig, dass sie dem Benutzer optimale Hinweise für sein
+weiteres Vorgehen liefern (siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+Nur wenn es keinen Fehler gegeben hat, wird eine Shape-Datei erzeugt,
+die in einer GUI visualisiert werden kann.
+
+Format: \verb;-PROT=<Pfad>;
+
+Beispiel: \verb;-PROT=C:\TEMP\WSPLGEN.LOG;
+
+Standardwert: \verb;WSPLGEN.LOG;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Zwingend erforderliche Eingabedateien}
+
+Folgende Dateien werden von WSPLGEN zwingend benötigt.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Digitales Geländemodell (DGM)}\label{subsubsec:file-dgm}
+
+Das digitale Geländemodell darf in drei verschiedenen Dateiformaten vorliegen,
+die im Folgenden näher beschrieben werden.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{ASCII-Format mit X,Y,Z-Tripeln}
+
+\verb; ;
+
+Das einfachste Format ist ein Format, das nur eine Kopfzeile und danach Tripel von Zahlen enthält,
+die die X- und Y-Koordinaten von Geländepunkten und als Z-Wert die Geländehöhe angeben.
+
+Format Beschreibung:
+
+Die Zeichen 'X', 'Y' und 'Z' bestimmen die Spalten für die entsprechenden Werte und stehen in der Kopfzeile.
+Die Ziffern '0' bis '9' und die Zeichen ',' oder '.' (\textit{Kommazeichen}) dienen der Bildung von Zahlen.
+Beliebige Kombinationen von Leerzeichen und Tabulatoren (\textit{Trennzeichen}) dienen als Trennung
+zwischen den Spalten. Die Zeilenenden werden durch das Zeichen 'Neue Zeile' (Newline) und/oder
+'Wagenrücklauf' (carriage return) (\textit{Zeilenendzeichen}) beendet.
+
+Leerzeilen, also Zeilen, die nur aus \textit{Trennzeichen} und \textit{Zeilenendzeichen} gebildet werden,
+werden einfach überlesen.
+
+Jede Datei in diesem Format hat genau eine Kopfzeile, in der die Zeichen 'X', 'Y' und 'Z'
+jeweils genau einmal vorkommen müssen und durch mindestens ein Leerzeichen oder einen Tablulator
+getrennt werden. Diese Zeile muss genau wie alle weiteren durch die \textit{Zeilenendzeichen} beendet werden.
+
+In allen weiteren Zeilen stehen 3 Zahlen, die durch \textit{Trennzeichen} getrennt sind.
+Die Zahlen müssen mit einer Ziffer beginnen und dürfen einmal ein \textit{Kommazeichen} aufweisen.
+Nach dem \textit{Kommazeichen} dürfen wieder beliebig viele Ziffern folgen, wobei nur 2 Nachkommazeichen ausgewertet werden.
+Die Zahlen werden sonst auf- oder abgerundet. Da im Allgemeinen davon auszugehen ist, dass es sich bei den
+X- und Y- Koordinaten und den Z-Werten um Meterangaben handelt, ist eine Genauigkeit von 1 cm für
+die hydraulischen Fragestellungen voll ausreichend.
+
+Die Zahlen, die die Z-Koordinaten repräsentieren, dürfen auch mit dem Zeichen '\verb;-;' beginnen,
+um negative Zahlen darzustellen. Nach dem Zeichen '\verb;-;' mussaber immer erst wieder eine Ziffer folgen.
+
+Welche Zahl in einer Zeile welche Bedeutung hat, wird durch die Reihenfolge der Zeichen 'X', 'Y' und 'Z' in der
+Kopfzeile bestimmt.
+
+Jede weitere Zahl oder jedes weitere Zeichen in einer Zeile werden ignoriert.
+
+Für die Anzahl der Zahlentripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als programmtechnische Begrenzung.
+Diese dürfte im Moment weit über den Verarbeitungsmöglichkeiten aktueller Computern liegen.
+
+Format Beispiele:
+
+Dies wäre eine 'normale' Datei.
+\begin{verbatim}
+X Y Z
+3542345.23 5836253.23 123.34
+3537627.00 5836234.10 121.12
+\end{verbatim}
+
+Dies wäre eine 'merkwürdige', aber trotzdem gültige Datei.
+\begin{verbatim}
+Y Z X
+
+
+ 5836253.23 123.34 3542345.23
+5836234.10123 121 3537627,0012 # der Wert stimmt nicht
+5817652 -88 345639872,234 36464 28282.344.222 noch Datenmüll
+
+
+ 5836234.10 11,123 3537627.0012
+\end{verbatim}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{ESRI ASCII Raster-Datei-Format}
+
+\verb; ;
+
+Als weiteres gültiges Format für die DGM-Daten kann das ESRI ASCII Raster-Datei-Format
+verwendet werden.
+
+Formatbeschreibung:
+
+Das ASCII Raster-Datei-Format ist ein einfaches Format, das benutzt werden kann, um Raster-Daten zwischen
+verschiedenen Programmen auszutauschen. Es besteht im Wesentlichen aus ein paar Kopfzeilen denen eine Liste von Zellwerten folgt.
+
+Die Kopfzeilen enthalten die folgenden Schlüsselworte und Werte.
+
+\begin{tabular}{l p{10cm}}
+\verb;ncols; & Anzahl der Spalten im Datensatz\\
+\verb;nrows; & Anzahl der Zeilen im Datensatz\\
+\verb;xllcenter; oder \verb;xllcorner; & X-Koordinate des Zentrums oder der linken,unteren Ecke der linken,unteren Zelle des Datensatzes\\
+\verb;yllcenter; oder \verb;yllcorner; & Y-Koordinate des Zentrums oder der linken,unteren Ecke der linken,unteren Zelle des Datensatzes\\
+\verb;cellsize; & Zellgröße des Datensatzes\\
+\verb;nodata_value; & Wert der Zellen zugewiesen wird, für die der Wert unbekannt ist. Dieses Schlüsselwort ist optional. Wird es nicht angegeben wird als Standardwert -9999 angenommen.\\
+\end{tabular}
+
+Die erste Zeile repräsentiert die Werte, die ganz oben im Datensatz liegen und läuft von links nach rechts.
+Die Zellwerte müssen durch Leerzeichen getrennt sein. Am Ende einer Zeile des Datensatzes ist
+kein \textit{Zeilenendzeichen} notwendig. Die Anzahl der Spalten, die im Kopf definiert wurde,
+wird benutzt, um zu ermitteln, wann eine neue Zeile des Datensatzes beginnt.
+Die Anzahl der Zellenwerte muss gleich sein mit dem Produkt aus Anzahl Zeilen mal Anzahl Spalten.
+
+Format Beispiel:
+
+\begin{verbatim}
+ncols 4
+nrows 5
+xllcorner 378923.56
+yllcorner 4072345.43
+cellsize 30.23
+nodata_value -100.00
+43.0 3.2 45 7.2
+ 3.1 56.2 2.3 5.5
+23.7 65.3 34.4 6.2
+32.1 35 45.12 65.12
+34.1 2 6 78
+etc
+\end{verbatim}
+
+Bemerkung:
+
+Als \textit{Kommazeichen} dürfen hier entgegen der amerikanischen Originaldefinition von ESRI
+sowohl das Zeichen ',' als auch das Zeichen '.' verwendet werden.
+
+Als \textit{Trennzeichen} dürfen hier entgegen der amerikanischen Originaldefinition von ESRI
+sowohl Leerzeichen als auch Tabulatoren verwendet werden.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Lage der Querprofile}\label{subsubsec:file-profile}
+
+Die Lage der Gewässerquerprofile wird immer als Polylinien-Thema in einer
+Shape-Datei übergeben, wobei es egal ist, ob der Typ des Polylinien-Themas
+ARC, ARCZ oder ARCM ist. Die Profile (Polylinien) können dabei aus beliebig
+viele Stützstellen bestehen. Jeder Profilspur ist ein Gewässer bzw. Gewässerbereich
+und eine eindeutige Stationierung zugewiesen (z.B. Weser, 120,230 oder Rhein-
+Vorland bei Köln, 102,242). Die beiden Angaben sind notwendig, damit das Programm WSPLGEN
+weitere benötigte Profile selbstständig interpolieren kann.
+
+Format Beschreibung:
+
+Die beiden Werte für Gewässer und Station werden gespeichert in den
+Attributen \verb;GEW;, vom Typ Text (String) mit einer Länge von
+maximal 255 Zeichen und \verb;Station;, das vom Typ Fließkommazahl (Float) ist
+und maximal 4 Nachkommastellen enthalten sollte, da die Stationen auf 4~Nachkommastellen
+auf- bzw. abgerundet werden. Interpretiert man die Station als Gewässerkilometerangabe, so
+bedeuten 4~Nachkommastellen ein Genauigkeit von 10~cm was für Gewässerprofile
+voll ausreichend ist.
+
+Eine Stationierung könnte dann z.B. so aussehen 123,234, Dabei ist es nicht wichtig,
+welches Trennzeichen verwendet wird, da die Zahlen binär gespeichert werden
+und somit kein Trennzeichen verwendet wird.
+
+Die Stationen dürfen nicht als Typ Text vorliegen (z.B. als 123+234),
+da keine Konvertierung vorgenommen wird.
+
+Die X- und Y-Koordinaten der Stützstellen der Polylinien werden im Allgemeinen
+als Meter interpretiert. Wichtig ist, dass sie im gleichen
+Koordinatensystem und der gleichen Projektion wie die des DGM vorliegen
+und die gleiche Einheit haben. Es wird keine Transformation zwischen diesen
+beiden Daten durchgeführt.
+
+Z- oder M- Werte der Polylinien werden ignoriert.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Wasserstände}\label{subsubsec:file-wsp}
+
+Die Wasserstände müssen den Gewässerprofilen zugeordnet werden können, wobei
+keine direkte Zuordnung notwendig ist. Es reicht aus, wenn Wasserstände
+für Gewässserprofile linear interpoliert werden können, es also einen
+Wasserstand mit einer Stationierung stromauf und einen Wasserstand mit
+einer Stationierung stromab eines Gewässerprofils gibt. Um eine sinnvolle
+Zuordnung zu ermöglichen, müssen die Wasserstände, genau wie die Lage der Profile,
+mit einem Gewässer (bzw. Gewässerabschnitt) und einer Station gekennzeichnet sein.
+Es werden nur Wasserstände für die Zuordnung herangezogen, die exakt gleiche
+Gewässerbeschreibungen wie die Profile haben, denen sie zugeordnet werden sollen.
+
+Die Wasserstände werden in einer Datei im ASCII- oder DBF-Format übergeben. Da die DBF-Datei
+immer auch eine der drei Dateien einer SHAPE-Datei ist, kann man auch sagen, das es sich um
+beliebige SHAPE-Dateien handeln kann, die die richtigen Attribute aufweisen müssen.
+Die geometrischen Informationen der Shape-Dateien sind hier überflüssig und werden nicht eingelesen.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{ASCII-Format}\label{file-ascii-wsp}
+
+\verb; ;
+
+Das einfachste Format ist ein Format, das nur eine Kopfzeile und danach Tripel von Texten und Zahlen enthält,
+die das Gewässer, die Station und den Wasserstand beschreiben.
+
+Die Zeichenketten 'GEW', 'STATION' und 'WSP' bestimmen die Spalten für die entsprechenden Werte und stehen in der Kopfzeile.
+
+Die Zeichen, die für die Gewässerkennzeichnung verwendet werden, sollten ASCII-Codes
+von 33 ('\verb;!;') bis 126 ('\verb;~;') sein. Werden Umlaute oder andere Sonderzeichen wie
+z.B. '\verb;ß;' verwendet, so ist dafür Sorge zu tragen, dass in der Datei, die die Lage der
+Profile definiert, die gleiche Kodierung verwendet wird.
+
+Die Ziffern '0' bis '9' und die Zeichen ',' oder '.' (\textit{Kommazeichen}) dienen der Bildung von Zahlen.
+Beliebige Kombinationen von Leerzeichen und Tabulatoren (\textit{Trennzeichen}) dienen als Trennung
+zwischen den Spalten. Die Zeilenenden werden durch das Zeichen 'Neue Zeile' (Newline) und/oder
+'Wagenrücklauf' (carriage return) (\textit{Zeilenendzeichen}) beendet.
+
+Leerzeilen, also Zeilen, die nur aus \textit{Trennzeichen} und \textit{Zeilenendzeichen} gebildet werden,
+werden überlesen.
+
+Jede Datei in diesem Format hat genau eine Kopfzeile, in der die Zeichenketten 'GEW', 'STATION' und 'WSP'
+jeweils genau einmal vorkommen müssen und durch mindestens ein Leerzeichen oder einen Tablulator
+getrennt werden. Diese Zeile muss genau wie alle weiteren durch die \textit{Zeilenendzeichen} beendet werden.
+
+In allen weiteren Zeilen stehen eine Zeichenkette und zwei Zahlen, die durch \textit{Trennzeichen} getrennt sind.
+
+Die Zeichenkette darf nur dann Leerzeichen enthalten, wenn sie durch das Zeichen '\verb;";' am Anfang und am Ende geschützt ist.
+Das Zeichen '\verb;";' wird nicht mit in die Zeichenkette aufgenommen.
+
+Die Zahlen müssen mit einer Ziffer beginnen und dürfen einmal als \textit{Kommazeichen} das Zeichen '.' oder ',' aufweisen.
+Nach dem \textit{Kommazeichen} dürfen wieder beliebig viele Ziffern folgen, wobei nur 4 Nachkommazeichen sinnvoll sind,
+da die Stationen auf 4 Nachkommastellen auf- bzw. abgerundet werden.
+
+Welche Zahl in einer Zeile welche Bedeutung hat, wird durch die Reihenfolge der Zeichenketten 'GEW', 'STATION' und 'WSP' in der
+Kopfzeile bestimmt.
+
+Jede weitere Zahl oder jedes weitere Zeichen in einer Zeile werden ignoriert.
+
+Für die Anzahl der Tripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als programmtechnische Begrenzung.
+Diese dürfte im Moment weit über den Verarbeitungsmöglichkeiten aktueller Computern liegen.
+
+Format Beispiele:
+
+\begin{verbatim}
+GEW STATION WSP
+Weser 100,000 22,23
+Weser 100,300 22,12
+Weser 100,600 22,03
+Weser 100,900 21,97
+Weser 101,200 21,94
+Weser 101,512 21,76
+"Weser-Schleuse Drakenburg" 0,000 22,23
+"Weser-Schleuse Drakenburg" 0,650 22,22
+"Weser-Schleuse Drakenburg" 1,300 22,21
+"Weser-Schleuse-Drakenburg" 1,951 21,78
+Weser 101,842 20,21
+Weser 102,100 20,01
+\end{verbatim}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\paragraph{DBF-Format}
+
+\verb; ;
+
+Dieses Format ist ein klassisches binäres Datenbankformat, das nur aus einem
+Datenblatt besteht, das wiederum aus einer Definition und den anschließenden Daten besteht.
+
+Die Felder des Datenblattes, die das Gewässer, die Station und den Wasserstand definieren heissen
+genau wie beim ASCII-Format (siehe Abschnitt~\ref{file-ascii-wsp}) 'GEW', 'STATION' und 'WSP'.
+
+'GEW' ist hierbei als Zeichkette mit maximal 255 Zeichen definiert und 'STATION' und 'WSP' sind
+jeweils Zahlen, wobei 'STATION' maximal 4 Nachkommastellen haben sollte, da die Stationen
+auf 4 Nachkommastellen auf- bzw. abgerundet werden.
+
+Die Zeichen, die für die Gewässerkennzeichnung verwendet werden, sollten ASCII-Codes
+von 33 ('\verb;!;') bis 126 ('\verb;~;') sein. Werden Umlaute oder andere Sonderzeichen wie
+z.B. '\verb;ß;' verwendet, so ist dafür Sorge zu tragen, dass in der Datei, die die Lage der
+Profile definiert, die gleiche Kodierung verwendet wird.
+
+Für die Anzahl der Tripel gibt es im Moment nur die 32-Bit Grenze von 2.147.483.647 als
+programmtechnische Begrenzung. Diese dürfte im Moment weit über den Verarbeitungsmöglichkeiten
+aktueller Computern liegen.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Optionale Eingabedateien}
+
+Optional können noch die folgenden Daten zur Feinsteuerung der
+Arbeitsweise von WSPLGEN übergeben werden.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Sperren und Durchbrüche}\label{subsubsec:file-sperr}
+
+Diese Datei ist optional und dient nur dazu, dem Benutzer mehr Möglichkeiten
+zu geben, die Ergebnisse zu beeinflussen
+(siehe Abschnitte~\ref{subsubsec:schritt-uebertragen} Schritt~\ref{schritt:uebertragen} und \ref{subsubsec:param-lin}).
+
+Formatbeschreibung:
+
+Die Datei ist, wie schon die Datei zur Definition der Lage der Gewässerquerprofile,
+im SHAPE-Format und enthält Polylinien (siehe Abschnitt~\ref{subsubsec:file-profile}).
+
+Sie hat ein Attribut, das den Namen \verb;TYP; trägt und vom Typ Text (String) ist.
+Das Attribut darf nur die Werte \verb;SPERRE; oder \verb;Bruch; annehmen. In jedem
+anderen Fall wird die zugehörige Polylinie ignoriert und eine Warnung ausgegeben.
+
+Wie schon bei der Profil-Datei werden die X- und Y-Koordinaten der Stützstellen der
+Polylinien im Allgemeinen als Meter interpretiert. Wichtig ist, das sie im
+gleichen Koordinatensystem und der gleichen Projektion wie die des DGM vorliegen
+und die gleiche Einheit haben. Es wird keine Transformation zwischen diese
+beiden Daten durchgeführt.
+
+Z- oder M- Werte der Polylinien werden ignoriert.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Ausgabedaten}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Rückgabewerte}
+
+Wenn WSPLGEN seine Arbeit ohne einen Fehler und Warnungen beenden kann, so wird
+als Rückgabewert vom Programm 0 zurückgeliefert, was dem aufrufenden
+Programm oder der Eingabeaufforderung (Shell) anzeigt, das das Programm ohne
+Fehler und Warnungen beendet wurde.
+
+Sollte es aber zu einem Fehler oder einer Warnung gekommen sein, so wird
+ein positiver Rückgabewert in Abhängigkeit des Fehlers generiert.
+
+Will oder kann das aufrufende Programm die Protokoll-Datei nicht auswerten,
+so kann und sollte es aufgrund des Rückgabewertes trotzdem eine für den Benutzer
+sinnvolle Fehlermeldung generieren.
+
+Die verschiedenen Rückgabewerte mit den entsprechenden Fehlermeldungen
+sind im Anhang~\ref{sec:fehlermeldungen} zusammengefasst.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Ausgabedateien}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Ergebnisse}\label{subsubsec:file-ergebnisse}
+
+Als Ausgabedaten generiert das Programm WSPLGEN bei fehlerfreier Ausführung
+eine Shape-Datei, in der Polygone enthalten sind, deren Umgrenzung Isolinien
+gleicher Wassertiefe repräsentieren (vgl. Abschnitt~\ref{subsubsec:param-delta}).
+Die Shape-Datei enthält als Attribut die repräsentierte Wassertiefe.
+Der gewünschte Name der Shape-Datei (inkl. Pfadangaben) wird dem Programm
+WSPLGEN wieder über die Kommandozeile durch den Parameter \verb;-AUSGABE;
+(siehe Abschnitt~\ref{subsubsec:param-ausgabe}) mitgeteilt.
+
+Format Beschreibung:
+
+Bei der Ausgabedatei handelt es sich um eine Datei im ESRI-Shape-Format
+des Types (POLYGON).
+
+Die X- und Y-Koordinaten der Polygone werden systembedingt als Gleitkommazahlen
+gespeichert und sind im gleichen Koordinatensystem mit den gleichen
+Einheiten wie das DGM, das als Basis für ihre Generierung diente.
+
+Das Attribut, das die repräsentierten Wassertiefen speichert,
+heisst \verb;<Diff>; (Differenz zwischen Wasserstand und Geländehöhe).
+Es gibt die Wassertiefe in Metern mit 2 Nachkommastellen an und ist daher vom Typ
+Fließkommazahl (Float).
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Fortschritt}\label{subsubsec:file-fort}
+
+Während des Laufs von WSPLGEN wird der akutelle Bearbeitungsstand kontinuierlich in einer
+Fortschrittsdatei aktualisiert, so dass die GUI in der Lage ist,
+ihn anzuzeigen. In einer Protokolldatei werden Warnungen
+und Fehler gespeichert, so dass der Benutzer nach dem Lauf überprüfen
+kann, ob alles zu seiner Zufriedenheit erledigt werden konnte oder ob es
+Probleme gegeben hat.
+
+Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
+Sollte es also einen Fehler oder Warnungen gegeben haben, die der Benutzer
+nicht ignorieren will, so muss er die Eingabedaten oder Parameter
+ändern und einen erneuten Lauf starten. Die Meldungen sind aber
+so aussagekräftig, dass sie dem Benutzer optimale Hinweise für sein
+weiteres Vorgehen liefern (siehe Abschnitt~\ref{subsubsec:file-prot}).
+
+Format Beschreibung:
+
+Die Fortschrittdatei wird von dem Programm WSPLGEN sehr häufig
+geschrieben, da so eine aufrufende GUI die Möglichkeit hat, den Benutzer
+ständig auf dem Laufenden zu halten. Aus diesem Grund schreibt WSPLGEN
+in die Fortschrittdatei immer wieder Text, der entweder in einer Zeile angibt was das
+Programm gerade tut oder in den folgenden Zeilen wie weit es damit ist.
+
+Format Beispiel:
+\begin{verbatim}
+->Lese DGM-Dateien
+10000 Punkte gelesen (20% der Datei)
+20000 Punkte gelesen (41% der Datei)
+30000 Punkte gelesen (62% der Datei)
+40000 Punkte gelesen (83% der Datei)
+45322 Punkte gelesen (100% der Datei)
+->Lese Querprofile
+100 Profile gelesen (48% der Datei)
+200 Profile gelesen (96% der Datei)
+212 Profile gelesen (100% der Datei)
+->Lese Wasserstände
+100 Wasserstände gelesen (85% der Datei)
+145 Wasserstände gelesen (100% der Datei)
+->Interpoliere Profile
+50 von 234 Profilen interpoliert
+100 von 234 Profilen interpoliert
+150 von 234 Profilen interpoliert
+200 von 234 Profilen interpoliert
+234 von 234 Profilen interpoliert
+->Interpoliere Wasserstände
+100 von 342 fehlenden Wasserstände interpoliert
+200 von 342 fehlenden Wasserstände interpoliert
+300 von 342 fehlenden Wasserstände interpoliert
+\end{verbatim}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsubsection{Datei Protokoll}\label{subsubsec:file-prot}
+
+Die Protokolldatei wird von dem Programm WSPLGEN nur
+geschrieben, wenn es Warnungen oder sogar einen Fehler im Programm gab.
+
+Die Protokolldatei sollte dem Benutzer immer nach dem Lauf von WSPLGEN
+angezeigt werden, wenn sie existiert.
+
+Eine direkte Interaktion mit dem Programm WSPLGEN ist nicht vorgesehen.
+Sollte es also Fehler oder Warnungen gegeben haben, die der Benutzer
+nicht ignorieren will, so muss er die Eingabedaten oder Parameter
+ändern und einen erneuten Lauf starten. Die Meldungen werden aber
+so aussehen, dass sie dem Benutzer optimale Hinweise für sein
+weiteres Vorgehen liefern.
+
+Wenn eine sinnvolle Shape-Datei erzeugt werden konnte (kein Fehler),
+so kann in einer GUI die weitere Visualisierung stattfinden.
+
+Format Beschreibung:
+
+Für jede Warnung wird eine Zeile der Form ,,\verb;->Warnung;'' in die Datei geschrieben,
+der eine beliebige Anzahl von Textzeilen folgen können, die die Warnung beschreiben.
+
+Die Beschreibung endet mit der nächsten Warnung, einem Fehler oder dem Ende der Datei.
+
+Falls ein Fehler austritt wird eine Zeile der Form ,,\verb;->Fehler;'' in die Datei geschrieben,
+der eine beliebige Anzahl von Textzeilen folgen können, die den Fehler beschreiben.
+
+Die Beschreibung endet immer mit dem Ende der Datei.
+
+
+Format Beispiel:
+\begin{verbatim}
+->Warnung:
+Für die Station 123 wurde der Wasserstand doppelt definiert
+(Wasserstände: 123,34 und 123,45).
+Es wurde der Wasserstand 123,34 verwendet.
+->Warnung:
+Der Wasserstand bei Profil 145 ist kleiner als
+alle Geländehöhe im DGM entlang dieses Profils.
+->Fehler:
+Für das Profil "Weser", Station 234,32 wurde kein Wasserstand definiert und
+es konnte auch keine Wasserstand interpoliert werden,
+da es kein Nachfolgeprofil mit einer höheren Stationierung gibt.
+\end{verbatim}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Zusammenfassung}
+
+Das Programm WSPLGEN kommuniziert nur über die Kommandozeile und
+verschiedene Ein- und Ausgabedateien mit der GUI. Bei fehlerfreier
+Ausführung wird eine Ausgabdatei im Shapeformat erzeugt, die Polygone
+enthält, die Bereiche gleicher Wassertiefe repräsentieren. In jedem
+Fall wird eine Fortschrittsdatei erzeugt, die den Bearbeitungsstand
+des Programmes dokumentiert. Sollten Warnungen auftreten oder es zu
+einem Fehler kommen so wird eine Protokolldatei angelegt, in der
+alle Meldung (Warnungen und Fehler) stehen, die für den Anwender hilfreich
+sein können, wenn er mit der Arbeit des Programmes nicht zufrieden ist.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{appendix}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Parameter}\label{sec:parameter}
+
+\begin{tabular}{|l|p{3.3cm}|p{2.6cm}|p{2.6cm}|p{4.4cm}|}\hline
+Parameter & Argumente & Typ & Einheit & Standardwert\\\hline
+PAR & Parameter-Datei & Pfadangabe & - & keiner - $<$optional$>$ \\\hline
+DELTA & \verb;<Von>;\newline \verb;<Bis>;\newline \verb;<Diff>; & Kommazahl \newline Kommazahl \newline Kommazahl & Meter\newline Meter\newline Meter & 0\newline Maximaler Wasserstand\newline (BIS - VON) / 10 \\\hline
+GEL & SPERRE & Auswahl & SPERRE \newline NOSPERRE & SPERRE \\\hline
+DGM & DGM-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
+PRO & Profil-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
+WSP & WSP-Datei & Pfadangabe & - & keiner $<$erforderlich$>$\\\hline
+LIN & Linien-Datei & Pfadangabe & - & keiner - $<$optional$>$ \\\hline
+AUSGABE & Ausgabe-Datei & Pfadangabe & - & WSPLGEN.SHP \\\hline
+PROT & Protokoll-Datei & Pfadangabe & - & WSPLGEN.STA \\\hline
+FORT & Fortschritts-Datei & Pfadangabe & - & WSPLGEN.LOG \\\hline
+\end{tabular}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Fehlermeldungen}\label{sec:fehlermeldungen}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Kein Fehler}
+
+Rückgabewert 0
+
+Fehlermeldung: Keine
+
+Beschreibung: Es hat weder Fehler noch Warnungen gegeben.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Fehlergruppe Parameterauswertung: 1xxx}
+
+\textbf{Rückgabewert: 1101}
+
+Fehlermeldung: Unbekannter Parameter
+
+Beschreibung: Es wurde ein Parameter verwendet, der dem Programm WSPLGEN unbekannt ist.
+
+
+\textbf{Rückgabewert: 1202}
+
+Warnung: Mehrfach verwendeter Parameter
+
+Beschreibung: Es wurde ein Parameter mehrfach verwendet. Nur das erste Auftreten wird berücksichtigt.
+Es wird immer zuerst die komplette Kommandozeile bearbeitet, bevor die Parameterdatei ausgewertet wird.
+Diese Warnung kann leicht vorkommen, wenn ein Parameter sowohl auf der Kommandozeile angegeben wird,
+als auch in der Parameterdatei vorkommt.
+
+
+\textbf{Rückgabewert: 1103}
+
+Fehlermeldung: Argument fehlt
+
+Beschreibung: Es wurde kein Argument für einen Parameter angegeben. Das Gleichheitszeichen oder
+die Argumente nach dem Gleichheitszeichen fehlen. Möglicherweise wurden zuviele oder
+ungeschützte Leerzeichen verwendet (siehe Abschnit~\ref{subsec:param}).
+
+
+\textbf{Rückgabewert: 1204}
+
+Warnung: Parameter DELTA ohne Argumente aufgerufen
+
+Beschreibung: Der Parameter DELTA kann auch ohne Parameter aufgerufen werden. Es werden dann nur
+Standardwerte für alle drei Argumente verwendet. Wenn dies gewünscht ist, braucht der Parameter
+überhaupt nicht angegeben zu werden. Das er doch gefunden wurde, könnte an einer falschen Aufrufsyntax liegen.
+Es könnte das Gleichheitszeichen fehlen oder es könnten zu viele Leerzeichen eingefügt worden sein.
+
+
+\textbf{Rückgabewert: 1205}
+
+Fehlermeldung: \verb;<Von>; ist größer als \verb;<Bis>;
+
+Erklärung: Das Argument \verb;<Von>; ist größer als das Argument \verb;<Bis>;. Die Reihenfolge der Argumente
+wurde wahrscheinlich nicht beachtet. Zuerst kommt \verb;<Von>;, dann \verb;<Bis>;, und dann \verb;<Diff>;.
+
+
+\textbf{Rückgabewert: 1206}
+
+Fehlermeldung: \verb;<Diff>; ist kleiner als 0
+
+Erklärung: Das Argument \verb;<Diff; muss immer größer oder gleich 0 sein.
+
+
+\textbf{Rückgabewert: 1207}
+
+Fehlermeldung: \verb;<Diff>; ist gleich 0, aber \verb;<Von>; und \verb;<Bis>; sind verschieden.
+
+Erklärung: Das Argument \verb;<Diff>; darf nur den Wert 0 haben, wenn \verb;<Von>; und \verb;<Bis>; gleich sind.
+Sind \verb;<Von>; und \verb;<Bis>; verschieden, so wäre eine Abstufung in Schitten zu 0 Metern sinnlos.
+
+
+\textbf{Rückgabewert: 1208}
+
+Warnung: \verb;<Diff>; ist größer als die Differenz von \verb;<Bis>; und \verb;<Von>;
+
+Erklärung: \verb;<Diff>; wird vom Programm ignoriert und nur eine Wassertiefenisolinie mit dem Wert \verb;<Von>; generiert.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Fehlergruppe Dateifehler: 2xxx}
+
+\textbf{Rückgabewert: 2101}
+
+Fehler: Eine Eingabedatei konnte nicht zum Lesen geöffnet werden.
+
+Erklärung: WSPLGEN hat versucht eine Eingabedatei zum Lesen zu öffnen, was nicht funktioniert hat.
+Die wahrscheinlichsten Ursachen sind, dass die angegebene Datei nicht existiert (also der Dateipfad
+oder -name falsch ist) oder das Programm (bzw. der Benutzer) nicht genug Rechte hat, die Datei zum Lesen zu öffnen.
+
+
+\textbf{Rückgabewert: 2102}
+
+Warnung: Einem Profil wurden verschiedene Wasserstände zugewiesen
+
+Erklärung: Es wurden einem Profil verschiedene Wasserstände zugewiesen.
+Es wird nur der zuerst gelesene Wasserstand verwendet.
+
+
+\textbf{Rückgabewert: 2103}
+
+Fehler: Für ein Profil konnte kein Wasserstand interpoliert werden.
+
+Erklärung: Für ein Profil konnte kein Wasserstand interpoliert werden,
+da kein Wasserstand stromab und/oder stromauf
+dieses Profils bekannt ist. Der wahrscheinlichste Grund ist, dass die
+Berechnungsergebnisse und die Profile nicht zusammengehören.
+
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{Fehlergruppe Datenfehler: 3xxx}
+
+\textbf{Rückgabewert: 3101}
+
+Warnung: Eine Eingabedatei könnte nicht zum Lesen geöffnet werden.
+
+Erklärung: WSPLGEN hta versucht eine Eingabedatei zum Lesen zu öffnen, was nicht funktioniert hat.
+Die wahrscheinlichsten Ursachen sind, dass die angegebene Datei nicht existiert (also der Dateipfad
+falsch ist) oder das Programm (bzw. der Benutzer) nicht genug Rechte hat die Datei zum Lesen zu öffnen.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\end{appendix}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\end{document}
+
+
+
More information about the Wsplgen-commits
mailing list