Universität des Saarlandes
Fachbereich 14 - Informatik

Dr. S. Schirra, Dr. E. Schömer

SOFTWAREPRAKTIKUM WS 99/00

6. Übungsblatt
(Abgabe: 29. November - 3. Dezember 1999)


1.
Aufgabe:      KLASSE FÜR RASTERDATEN (Punkte: 6)

Integrieren Sie die Funktion zum Skalieren von Rasterdaten (siehe Übung 3, Aufgabe 4!) in die Klasse RasterData aus der Vorlesung, und visualisieren Sie die Ergebnisse mit Hilfe der Klasse RasterWindow.

2.
Aufgabe:      KLASSE FÜR VEKTORDATEN (Punkte: 7)

Entwerfen Sie eine Klasse namens VectorData zur Verwaltung von mehreren Flussläufen. Integrieren Sie die Funktion zum Vereinfachen von Linienzügen (siehe Übung 5, Aufgabe 3!) in diese Klasse. Überarbeiten Sie die Klasse VectorWindow aus der Vorlesung, um Ihre Ergebnisse zu visualisieren.

3.
Aufgabe:      BERECHNUNG DER HANGNEIGUNG (Punkte: 7)

Gegeben sei ein digitales Geländemodell. Die Höhe eines Punktes $(x,y)\in\mathbf{R}\times\mathbf{R}$ bezeichnen wir mit f(x,y). Wir wollen die Bereiche starker Hangneigung ermitteln. Dazu definieren wir folgenden Differentialoperator:

\begin{displaymath}D=\sqrt{\left(\frac{\partial}{\partial x}\right)^2
+\left(\frac{\partial}{\partial y}\right)^2}
\end{displaymath}

Das Ziel ist die Berechnung von $D\,f$.

Da die Höhenangaben nur für diskrete Punkte $(i,j)\in [0..w-1]\times
[0..h-1]$ in einem festen Raster verfügbar sind, arbeiten wir mit der diskretisierten Version des Operators D. Dazu approximieren wir die partiellen Ableitungen durch zentrale Differenzenquotienten:

\begin{eqnarray*}\frac{\partial}{\partial x}f(i,j) &\doteq & \frac{1}{2}(f(i+1,j...
...}{\partial y}f(i,j) &\doteq & \frac{1}{2}(f(i,j+1)-f(i,j-1)) \\
\end{eqnarray*}


für 0<i<w-1 und 0<j<h-1. Wie kann man diese Ableitungen am Rand des Definitionsgebietes definieren?

Lesen Sie ein digitales Geländemodell ein, und visualisieren Sie es als Graustufenbild. Berechnen Sie die Hangneigungen nach obigem Schema, und visualisieren Sie das Ergebnis ebenfalls als Graustufenbild. Die Rasterdaten finden Sie unter /home/stud/praxprog/GeoData/Region?.dat.