• Keine Ergebnisse gefunden

71 (2),S.83–941983BibTEX: ¨OsterreichischeZeitschriftf¨urVermessungswesenundPhotogrammetrie TechnischeUniversit¨atGraz,Institutf¨urTheoretischeGeod¨asie,Technikerstraße4,A-8010Graz BernhardHofmann-Wellenhof Aussparungsfl¨achenundunregelm¨aßigeR¨anderbeider

N/A
N/A
Protected

Academic year: 2022

Aktie "71 (2),S.83–941983BibTEX: ¨OsterreichischeZeitschriftf¨urVermessungswesenundPhotogrammetrie TechnischeUniversit¨atGraz,Institutf¨urTheoretischeGeod¨asie,Technikerstraße4,A-8010Graz BernhardHofmann-Wellenhof Aussparungsfl¨achenundunregelm¨aßigeR¨anderbeider"

Copied!
13
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Paper-ID: VGI 198308

Aussparungsfl ¨achen und unregelm ¨aßige R ¨ander bei der Ableitung von H ¨ ohenlinien aus einem H ¨ ohenraster

Bernhard Hofmann-Wellenhof

1

1

Technische Un iversit ¨at Graz, Institut f ¨ur Theoretische Geod ¨asie, Technikerstraße 4, A-8010 Graz

Osterreichische Zeitschrift f ¨ur Vermessungswesen und Photogrammetrie ¨ 71 (2), S.

83–94 1983

BibTEX:

@ARTICLE{Hofmann-Wellenhof_VGI_198308,

Title = {Aussparungsfl{\"a}chen und unregelm{\"a}{\ss}ige R{\"a}nder bei der Ableitung von H{\"o}henlinien aus einem H{\"o}henraster},

Author = {Hofmann-Wellenhof, Bernhard},

Journal = {{\"O}sterreichische Zeitschrift f{\"u}r Vermessungswesen und Photogrammetrie},

Pages = {83--94}, Number = {2}, Year = {1983}, Volume = {71}

}

(2)

ÖZfVuPh 71 . Jahrgang / 1 983/ Heft 2

Aussparungsflächen und unregel mäßige Rä nder bei der Ableitung von Höhen l i n ien aus ei nem Höhenraster

Von B. Hofmann-Wellenhof, Graz

Zusammenfassung

83

Es wird eine Methode zur Berücksichtigung von Aussparungsflächen und unregelmäßigen Rändern bei der Ableitung von Höhenlinien aus einem regelmäßigen Höhenraster vorgeschlagen.

Die Aussparungsflächen und unregelmäßigen Ränder, die als geschlossene Polygone definiert werden, werden u nter Verwendung von linearen Listen mit dem Höhenraster kombiniert. Dadurch gibt es weder Beschränkungen für die Anzahl der Punktkoordinaten der Aussparungspolygone noch für die Anzahl der Polygone innerhalb einer Rastermasche.

Abstract

A method for the consideration of contour-free regions and irregular boundaries at the derivation of contour lines from heights at a regular grid is proposed. The contour-free regions and the irregular boundaries, defined as closed polygons, are combined with the height-grid using linear lists. Therefore a limit does not exist neither for the number of point-coordinates of the contour-free regions nor for the number of polygons within a grid-mesh.

1. E inleitung

Bei der Berücksichtigung von Aussparungsflächen und u n regelmäßigen Rän­

dern aus einem Höhenraster kann man viel Computerzeit gewinnen oder verlieren. In dieser Arbeit wird besonderer Wert darauf gelegt, eine Methode vorzusch lagen, d ie möglichst sparsam Computerzeit verwendet.

Oft stellt man an die Darstellung der Aussparungsflächen und u n regelmäßigen Ränder keine großen Genauigkeitsanforderungen, wie z. B. bei der Methode von Koch (1 973), bei der im allgemeinen nicht die Schnitte der Höhenlin ien m it dem Aussparungspolygon berech net werden. Oder es werden an Stelle der Höhenlinien zur Berechnung der Schnittpunkte mit den Aussparungsflächen H öhenlinienpolygone verwendet (Sünkel, (1 980)). Computerprogrammentwicklungen der letzten Jahre, die z. B. Winter (1 980) zu einem Vergleich heranzieht, enthalten alle eine Möglichkeit, Aussparungsflächen in irgendeiner Form darzustellen .

Aussparungsflächen und unregelmäßige Ränder kann man günstig i n völlig analoger Weise darstellen, wenn man geschlossene Polygone (vg l. h ierzu z. B. Kruse, (1 979)) einführt. Diese Definition ergibt sich bei Aussparungsflächen, die vollständig innerhalb der Zeichenfläche (Rechenfläche) l iegen, von selbst. Bei Aussparu ngsflä­

chen, die einen Teil eines Zeichenblattrandes beinhalten , die also dann u n regelmä­

ßige Ränder ergeben, nimmt man das entsprechende Randstück formal hinzu, um wieder ein geschlossenes Polygon zu erhalten.

Der wesentliche Schritt, der über den Vorteil oder Nachteil einer Methode entscheidet, ist die Kombination der geschlossenen Polygone, also der Aussparungs­

flächen und der u n regelmäßigen Ränder, mit dem Höhenraster. Als Höhen raster legen wir einen Raster mit quadratischen Maschen zugrunde, und bei der Verknüpfung der

(3)

84 ÖZfVuPh 71 . Jahrgang / 1 983/ Heft 2

Aussparungsflächen mit dem Höhenraster lehnen wir uns in der graph ischen Darstel­

lung von Listen und Verkettungen stark an Knuth (1 973), Aha et al. (1 975), Berztiss (1 971 ) und Horowitz, Sahni (1 978) an. Diese Arbeit ist eine Folgearbeit zu Ebner et al.

(1 980). Jedoch ist das Konzept der vorgeschlagenen Methode überall dort anwend­

bar, wo ein regelmäßiger Raster (rechteckige oder quadratische Maschen) vorliegt.

2. Aussparungsflächen und unregelmäßige Ränder Defin ition als geschlossene Polygone

Wir wollen Aussparungsflächen und unregelmäßige Ränder stets als geschlos­

sene Polygone definieren, wobei wir zusätzlich noch einen U mfahrungssinn einfüh­

ren. Wenn wir weiters vereinbaren, daß der U mfahrungssinn immer in U h rzeigerrich­

tung verlaufen soll, und wir d urch d iese Art der U mfahrung stets d ie dad urch einge­

schlossene Polygonfläche definieren wollen , können wir sämtliche Standardsituatio­

nen für Aussparungsflächen, wie z. B. Seen, Wälder, Straßen und die unregelmäßigen Ränder, erfassen. Wir müssen, u m die angefüh rten Beispiele vollständig in jeder Position auf dem Zeichenblatt zu beherrschen, nur noch vereinbaren, daß Ausspa­

rungspolygone, d ie nicht völlig innerhalb der Zeichenfläche l iegen, d urch die entspre­

chenden Zeichenblattränder zu ergänzen sind. Diese Aussparungsflächen, d ie an ein Teilstück eines Blattrandes grenzen, definieren einen unregelmäßigen Rand, das heißt, in der Folge genügt es, von Aussparungsflächen zu sprechen, da dadurch der Begriff des unregelmäßigen Randes bereits inklud iert ist.

• 1

Abb. 1 Aussparungsflächen bzw. unregelmäßige Ränder mit angedeutetem U mfahrungssin n

Nun können jedoch auch kompliziertere Aussparungsflächen auftreten, etwa ringförmige, wie sie sich z. B. bei einem See m it einer Insel zeigen. Nachdem wir den U mfahrungssinn bereits fixiert haben, m üssen wir, um diese Aussparu ngsflächen bearbeiten zu können, auch die Definition von Flächen zulassen, in denen gezeichnet werden soll. Wenn wir uns in der graphischen Darstellung an d ie Bezeichnung von Sünkel (1 980) anlehnen, und Flächen, in denen gezeich net werden soll, m it + "

bezeichnen, und Flächen, die ausgespart werden sollen, m it „ -" , so könnte ein Kartenblatt m it eingezeichneten geschlossenen Polygonen, d ie nun einerseits Aus­

sparungsflächen und andererseits Flächen, in denen gezeichnet werden soll, sym boli­

sieren, etwa wie in Abb. 2 aussehen.

(4)

ÖZfVuPh 71 . Jahrgang / 1 983 /Heft 2 +

+

+

Abb. 2 Kompliziertere Aussparungsflächen

85

Bemerkung: Es wäre auch möglich, die Definition von Flächen, die d u rch ein Polygon eingeschlossen werden und in denen gezeichnet werden soll, z u vermeiden.

Dazu müßte man nur vereinbaren, den U mfah rungssinn auch gegen die Uh rzeiger zuzulassen. Dann könnte man durch ein geschlossenes Polygon stets eine Ausspa­

rungsfläche bzw. durch entsprechende Polygone auch ringförmige Aussparungsflä­

chen definieren . Es bleibt Ermessenssache, eine E ntscheidung zu treffen, doch dürfte es vielleicht für den Bearbeiter einfacher sein, nur einen Umfah rungssinn mit der entsprechenden Bezeichnung der eingesch lossenen Fläche (+ " oder „-") zuzulas­

sen.

3. Verkettung der geschlossenen Polygone mit den Maschen des Höhenrasters

Nach der Defin ition der Aussparungsflächen und der u n regelmäßigen Ränder durch Polygone müssen wir nun bei der Ableitung der Höhenlinien aus einem Höhen­

raster die Aussparungsflächen berücksichtigen, das heißt, wir müssen die Ausspa­

rungsflächen mit dem Höhenraster in irgendeiner Weise verknüpfen . Wir führen die Verknüpfung derart durch, daß wir die Schnittpunkte der Polygone mit dem Höhenra­

ster berechnen und diese Schnittpunkte als Polygonpun kte defin ieren.

Anmerkung: Wie in Abschnitt 6 gezeigt wird, ist es nicht u numgänglich erforder­

lich, d iese Schnittpunkte zu berechnen. Wir wollen sie an dieser Stelle n u r der größeren Ü bersichtlichkeit halber einfüh ren, und weil wir dadurch innerhalb einer Rastermasche einen Polygonschnitt, der auf einer Seite einer Masche des Höhenra­

sters beginnt u nd auf einer Maschenseite endet, definieren können. Dadu rch können wir graphisch viel besser und einfacher die Verkettu ngen darstellen.

Jede Masche des Höhenrasters, die Schn ittpunkte eines Polygons enthält, kennzeichnen wir besonders, damit wir später bei der Ableitung der Höhenlinien diese Maschen als Sonderfall behandeln. Dazu führen wir für jede Masche des Höhenra­

sters einen Pointert HM (1, J) ein, der angibt, daß durch die Masche (1, J), wobei 1, J etwa der linke untere Eckpunkt der Rastermasche sein soll, ein Polygon läuft u n d der gleichzeitig auf die Adresse eines Sch nittpunkts des Polygons zeigt.

(5)

86

5 4

P2

3

PI

2 J= I

I= I 2

P3 S4 P4

3 5

P7

6

ÖZfVuPh 71 . Jahrgang / 1 983 / H eft 2

t HM<2, 3) --. S I t HM(3, 3 ) - S2 t HM<3, 4) - S3 t HM C 4, 4) -- S4 t HM ( 4, 3) - S5 t HM<S, 3) - S6 t HMC5, 2) - S7 t HM C 4, 2) - SB i HM ( 4, 1 ) - S9 t HMC3, 1 ) --. SI 0 t HMC2, 1 ) - S I 1 t HMC2, 2) - S I 2

Abb. 3 Höhenraster mit einer Aussparungsfläche und den entsprechenden Maschenpointern t HM (1, J)

Damit man innerhalb einer Masche die gesamte Information ü ber das Polygon erhalten kann, muß man die Polygonpunkte und die Sch nittpun kte m it den Maschen­

seiten verknüpfen . Es genügt eine einfache Verkettung (vgl. z. B. Knuth ( 1 9 73), Aho et al. (1 975), Berztiss (1 971 ), Horowitz, Sahni (1 978)), wenn man bei der Schnitt­

punktsberechnung systematisch, etwa in der U mfahrungsrichtung dem Polygon folgend, vorgeht. Mit dieser einfachen Verkettung und dem Pointe r t H M ( 1 , J ) kann man für jede Masche sämtliche Punkte eines Polygons feststellen. Der letzte P un kt des Polygons, der zu einer Masche gehört, ist dann erreicht, wenn ein Sch nittpunkt des Polygons mit dem Raster gefunden wird. Dies erkennt man an den Koordinaten des Punktes, da, lokal gesehen, m it dem Koordinatenu rsprung im P u n kt 1, J eine der beiden Lagekoordinaten 0 oder !::,. , wenn man mit !::,. die Länge der Maschenseite bezeichnet, sein muß, bzw. global gesehen, eine der beiden Koord inaten ein Vielfa­

ches der Maschenseitenlänge !::,. sein muß, also entweder mod (x, !::,. ) = 0 oder mod (y, !::,.) = 0 sein muß, wenn x, y die Koordinaten des untersuchten Punktes sind.

Wenn wir beispielsweise von der Masche (3, 1) der Abb. 3 die gesamte Information über den in dieser Masche relevanten Abschnitt des Polygons erhalten wollen, so finden wir zunächst über den Pointert HM (3, 1 ) als ersten Punkt S 1 0, dann den P un kt P 9 und schließlich S 1 1 , der, wie der Ausgangspunkt S 1 0, wieder auf einer Maschen­

seite liegt und daher den Abschluß für die Masche (3, 1 ) bildet. Wenn d urch eine Masche ein Polygon läuft, müssen also mindestens zwei Punkte, die auf Maschensei­

ten liegen, gefunden werden.

Eine Möglichkeit, die zwar im allgemeinen auch sehr selten auftreten wird, darf man n icht ausschließen, nämlich, daß durch eine Masche zwei oder mehrere ver­

schiedene Polygone oder auch ein und dasselbe Polygon mehrmals läuft. U m diese Fälle behandeln zu können, führen wir einen Listenkopf ein, der zwei Pointer enthält, wobei der eine Pointer auf den ersten Polygonpunkt in dieser Masche zeigt und der zweite angibt, ob in dieser Masche weitere Polygonabschnitte verlaufen . Zeigt der zweite Pointer auf N IL, also auf ungültig, so gibt es in dieser Masche keine weiteren Polygonabschnitte mehr, ist er hingegen g ü ltig, so findet m an ü ber d iesen Pointer die Adresse des ersten Punktes dieses Polygonabschnittes. Die nachfolgende Abbild u ng möge das Prinzip verdeutlichen.

(6)

4.--��...-��-.---��� 3 P21 2

Sl6 P22 l7 1 P1 J=I

1 1 I=I 2 3 4 Abb. 4 Verkettung der Polygonpunkte, der Maschenpointer tHM (1, J) und der Polygon­ abschnitte die innerhalb einer Masche liegen Q: N < c -u :::; :::i '­ !ll (Cl !ll ::i (Cl .... CD Q) c.v ..._ :::c Cl> � I\:> CX> -.J

(7)

88 ÖZIVuPh 71 . Jahrgan g / 1 983/ Heft 2

Bemerkungen: Wie aus Abb. 4 ersichtlich ist, sind die Punkte eines gesch losse­

nen Polygons zu einer kreisförmigen Liste (vg l. etwa Knuth (1 973)) zusammengefaßt.

Dadurch ist es möglich, von jedem beliebigen Punkt der Liste das g esamte Polygon zu durch laufen.

Es mag überflüssig erscheinen, zu jedem f HM (1 , J ), der auf einen Polygon­

punkt zeigt, einen Kopf einzuführen. Man kön nte zwar den Pointer tHM (1, J) jeweils als doppelten Listenkopf zweier Listen einführen, wovon einer auf den Polygonpunkt zeigt und der zweite angibt, ob es in dieser Masche (1, J ) noch einen weiteren Poly­

gonabschnitt gibt, und dadurch den Kopf einsparen, doch global betrachtet würde dadurch weit mehr Speicherplatz benötigt werden. Denn der Kopf wird nur dann eingeführt, wenn i n der Masche (1, J ) ein Polygon verläuft. Der weitaus häufigere Fall ist jedoch, daß durch eine Masche kein Polygon läuft, dann genügt es, den Pointer tHM (1, J) = NIL (bzw. wie wir später sehen werden, auf + " oder „ -") zu setzen.

Bestände dieser Speicherplatz aus zwei Speichereinheiten, wäre die zweite immer dann überflüssig u nd damit verschwendet, wenn die erste auf NIL gesetzt wird, wenn also kein Polygon diese Masche schneidet.

Mit Hilfe der in Abb. 4 gezeigten Verkettungen ist es möglich, einerseits durch den Pointer t HM (1, J) und andererseits durch die Verkettung der Polygon punkte untereinander in der Masche (1, J) sämtliche Polygonpunkte, die in der Masche liegen bzw. auf den Rändern der Masche, zu finden.

4. Definition von Maschen, in denen gezeichnet werden soll und solchen, in denen nicht gezeichnet werden soll

Bei der in Absch nitt 3 angegebenen Verknüpfung der Polygone mit dem Höhen­

raster durch die Berechnung u nd Einfügung der Schn ittpunkte des Polygons mit den Rasterseiten, die wir jetzt als bereits durchgefüh rt betrachten, ist es sinnvoll, darüber Buch zu führen, wie viele Schnittpunkte für jedes Polygon berech net wurden. Damit ist es möglich, die Polygone nach i h rer Flächeng röße festzulegen.

Die Maschen, die Polygonseiten enthalten, sind bereits aus Abschnitt 3 bekannt, das heißt, die Pointer t H M (1, J) der entsprechenden Maschen zeigen schon auf die jeweilige Adresse. Alle anderen tHM (1, J) derjenigen Maschen, die keine Polygonseite enthalten, sind noch unbearbeitet, für sie gilt etwa tHM (1, J ) = 0. U m n u n die Pointer dieser Maschen in den entsprechenden Status zu bringen, also etwa fHM (1, J) =

+ ", wenn in dieser Masche gezeichnet werden soll, und tHM (1, J ) = „ -" , wenn diese Masche völlig innerhalb einer Aussparungsfläche liegt und somit darin keine Höhenlinie gezeichnet werden darf, bearbeiten wir sämtliche gesch lossenen Polygone der Reihe nach, wobei wir mit dem flächen kleinsten Polygon beginnen, damit wir n icht Gefahr laufen, eine bereits gewonnene I nformation zu zerstören (Poi nter H M (1, J ), die bereits bearbeitet wurden, die also """' O sind, dürfen nicht mehr verändert werden ! ).

Sämtliche Maschen, die noch unbearbeitet sind und die völlig in nerhalb des aktuellen Polygons liegen, werden mit dem Symbol + " bzw. „ -" , je nachdem, ob dieses Polygon eine Fläche, in der gezeichnet werden soll oder eine Aussparu ngsflä­

che repräsentieren soll, gekennzeich net.

Wurden sämtliche Polygone bearbeitet, m üssen alle noch u n bearbeiteten Ma­

schen pointer, also solche, für die tHM (1, J ) = 0 ist, auf + " gestellt werden.

(8)

ÖZtVuPh 7 1 . Jahrgang / 1 983/ Heft 2

J ·� ,. --f--· + + + + · --r--- - ---·1- + + + + + + + + + + + + �--

+ - -

+ - - - -

+ - - -

+ - - V t t t t t

· --- -- f---

+ - - + t + + --

+ - - + t + t 1 -

+ - - + t + + 1..-

+ - - + t + + + t + - - + + + + + t

+ - -

+ - - - -

+

+ +

- -

+ +

= �

' - -

+ \ -

- + -

1 t -

...J. + -

+ + -

+ + -

- - - - -

+ + + + + +

-- - - - - - - - - -

+ + + + + - + + + + + - + + + + + "

+ + + + + + ...., + + + + + + + + + + + + + + + + + + + + + + + + + + + t + + + + + + + - + + + + + t + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Abb. 5 Die Werte für den Pointert HM (1, J) für ein Rasterfeld

89

- - - - - - - - -

+ + + + t + + + + + + + + t + + t + + t + + + + + + + + + + I

In Abb. 5 haben wir die Werte des Pointers tHM (1, J) mit dem Rasterfeld kombi­

niert (vgl. auch Sünke/, (1 980)). Bei den Maschen, die Polygonpu nkte enthalten, m u ß man sich f ü r d e n Pointer tHM ( 1 , J) d i e entsprechende Ad resse vorstellen, unter der der Beginn der Polygoninformation für d iese Masche zu finden ist.

Mit der Wertzuweisung für den Pointer THM (1, J), wobei sich 1 und J über das gesamte zu zeichnende Gebiet erstrecken, sind die vorbereitenden Arbeiten bezüg­

lich der Aussparungsflächen abgeschlossen. Über den Pointer t H M (1, J) kön nen nun sofort ohne Suchprozeß die für die Masche (1, J) relevanten Daten, die mit Ausspa­

rungsflächen in Verbindung stehen, erhalten werden.

5. Schnittpunkte der Höhenlinien m i t d e n Polygonen d e r Aussparungsflächen

Bisher haben wir die Datenaufbereitung für die Aussparungsflächen vollkommen losgelöst von der Ableitung der Höhenlinien betrachtet. N u n , da d ie Schnittpun kte der Höhenlinien mit den Aussparungspolygonen zu berechnen sind, m üssen wir auch vereinbaren, in welcher Weise und nach welcher Organisation die Höhenlinien gewonnen werden. Wir legen die in Ebner et al. (1 980) besch riebene Methode zugrunde. Das bedeutet, wir setzen voraus, daß die Höhenlinien folgendermaßen gewonnen werden :

1 . E s wird, beginnend bei den Blatträndern, nach dem Beginn einer Höhenlinie gesucht. Wird d urch die Interpolation der Ausgangspunkt einer Höhenlinie festgelegt, so werden nachfolgend alle Schnittpunkte dieser aktuellen Höhenlinie mit dem Höhenraster d u rch Interpolation gewonnen, bis der Endpun kt der Höhenlinie erreicht ist. Diese Schnittpunkte der Höhenlinie mit dem Höhenraster bilden ein Höhenlinien­

polygon.

2. Nach der Berechnung aller Höhenlinienpolygone werden durch I nterpolation g latte, kontinuierliche Höhenlinien berechnet.

(9)

90 ÖZfVuPh 71 . Jahrgang / 1 983/ Heft 2

Nun müssen wir festlegen, wo wir den Schnitt machen u nd die Berücksichtigung der Aussparungsflächen einschieben . Es bieten sich zwei Methoden an. Bei der ersten seien die Höhenlinienpolygone für das ganze zu zeich nende Gebiet bereits ohne Berücksichtigung der Aussparu ngsflächen abgeleitet worden. Und bei der zweiten Methode wollen wir schon während der Ableitung der Höhenlinienpolygone die Aussparungsflächen berücksichtigen .

5. 1 . Die Berücksichtigung der A ussparungsf/ächen nach der Ableitung der Höhen­

linienpolygone

Die bequemste und am einfachsten zu realisierende Methode ist die, daß Höhenlinienpolygone vorliegen u nd wir während der Berechnung der Verdichtu ngs­

punkte für die Höhenlinie die Aussp.arungsflächen berücksichtigen. Der Vorgang könnte folgendermaßen vor sich gehen, wobei wir annehmen, daß wir bereits ein Höhenlinienpolygon in Arbeit haben und vom Punkt A bis zum Pun kt L das H öhen­

linienpolygon schon verdichtet haben, wie dies in Abb. 6 angedeutet ist:

5

4

(

L

. ·""6i

„.� .

/

EI

/ -

3

i

I 2

J= I

I= I 2 3 4 5 6

±!' . .

--

I2 E2

· ·r

J

1

� ./§.. „ 2

.„.,,,,

7 8 9

E

Abb. 6 Verdichtung ei nes Höhenlinienpolygons unter Berücksichtigung von Aussparungsflächen

[1 ] Nimm den nächsten Höhenlinienpolygonabschnitt. Prüfe, ob dieser Absch nitt (in unserer Ausgangsposition ist dies der Abschn itt L-G 1 ) mit einer Aussparungsflä­

che in Zusammenhang steht. Dies ist der Fall, wen n .tH M ( 1 , J) '*' + " ist. Ist dies der Fall, gehe nach [2], andernfalls interpoliere (und zeichne von L nach G 1 ) und gehe nach [3].

[2] Aussparungsfläche. Wenn t H M (1, J) für die aktuelle Masche „-" ist, gehe (oh ne zu interpolieren, da der aktuelle Höhenlinienpolygonabsch nitt völlig innerhalb einer Aussparungsfläche liegt) nach [3]. Andernfalls wurde eine M asche gefunden, die einen oder mehrere Aussparungspolygonabschnitte enthält. P rüfe nach jedem interpolierten Zwischenpunkt, ob sich mit dem Polygon ein sinnvoller Schn ittpu n kt ergibt. Ist dies der Fall, so ersetze den interpolierten Punkt d urch den Schnittp u n kt (sonst läge der letzte interpolierte Punkt bereits in der Aussparungsfläche). I nterpo­

liere weiter (dies ist notwendig, weil die Höhenlinie nochmals ein Polygon schneiden kann und somit ab diesem Schnittpunkt wieder zu zeichnen ist, vgl. Abb. 7) u n d prüfe, ob sich weitere Schnittpu nkte mit einer Aussparungsfläche in dieser Masche ergeben .

(10)

ÖZIVuPh 71 . Jahrgang / 1 983/ Heft 2 91 Ist d e r Endpunkt d e s Höhenlin ienabsc h n ittes i n d ieser M asche erreicht, g e h e nach [3]. Anmerkung: Es muß nicht zwangsläufig ein Sch n ittp u n kt gefu nden werden, da die Höhen linie diese M asche auch verlassen kan n , ohne d ie Aussparungsfläche zu schneiden.

[3] Prüfe, ob die Höhenlinie schon zu Ende ist. Wen n ja, gehe nach [4], anson­

sten gehe nach [1 ] . [4] Ende.

+ +

+ +

Abb. 7 Höhenlinien, die innerhalb einer Masche mehrmals Aussparungspolygone schneiden

Wenn wi r die Höhen linienpunkte speichern wollen, können wir nach der I n terpo­

lation der Zwischenpunkte die Punkte E 1 und E2 (vgl . Abb. 6) als E n d pu n kt bzw.

Anfangspun kt deklarieren.

5.2. Die Berücksich tigung der A ussparungsf/ächen während der Ableitung der Höhenlinienpolygone

Die Rechtfertig ung dieser Methode gegen ü ber der in 5 . 1 . angegebenen ist n u r dann gegeben, wen n w i r m i t Gebieten arbeiten, d i e einen hohen P rozentsatz an Aussparungsflächen aufweisen . Denn dann fällt die I nterpol ation von Höhenlin ien po­

lygon punkten in Gebiete n , die bei der Zeich n u n g der Höhenlinien ausgespart werden, ins Gewicht, und dann ist es sin nvoll, d ie I nterpolation i n den Aussparungsgebieten zu vermeiden. Das P roblem, d as dieser viel eleganteren Methode anh aftet, sei kurz analysiert.

G reifen wir d ie Masche der Abb. 8 heraus. Wir setzen voraus, daß wir m it einem Höhenlinien po lygon bis z u m P u n kt G gelangt sind u n d nun d i e Aufgabe haben, den nächsten P u n kt des Höhenlinien polygons z u finden. Der n ächste P u nkt wäre 1 1 , dieser liegt aber, wie angedeutet, i n einer Aussparu ngsfläche. Den Schn ittpunkt E 1 mit der Aussparu ngsfläche können wir aber z u m g egenwärtigen Z eitp u n kt nicht berechnen, d a dies erst bei der Verd ichtung der Höhen l i n ie möglich wird , d e n n erst während der Verdichtung werden beispielsweise d ie Tangenten in den P u n kten G u n d 1 1 berech net (vgl . h ierzu Hofmann- Wellenhof, (1 981 ) ) . D a s heißt, wir m üssen etwa d as Höhen linienpolygon vorläufig bei m Pu n kt G beenden u n d d iesen P u nkt ents prechend deklarieren, damit wir beim Verd ichten d ie Höhenlinie nicht im P u n kt G abbrechen, sondern bis z u m P u n kt E 1 fortsetzen.

Vor einem in der Literatur h äufig z u findenden Fehler sei h ier g ewarnt. Es wäre falsch, die lineare Verbi ndung zwischen G u n d 1 1 mit dem Aussparung spolygon zu

(11)

92 ÖZfVuPh 71 . Jahrgang / 1 983/ Heft 2 schneiden und den dad u rch erhaltenen P u n kt F als Höhenlin ienpolygon p u n kt z u erklären. D e r Untersch ied zwischen dem tatsächlichen Höhen l i n ienpunkt E 1 u n d dem falschen Punkt F ist i n Abb. 8, wen n auch stark ü bertrieben, zu sehe n .

S 1 G

S2

Abb. 8 Unterschied zwischen tatsächlichem Verlauf einer Höhenlinie von G nach 1 1 und der li nearen Verbindung dieser beiden Punkte

Der Nachteil, daß die Sch nittpu n kte der Höhen l i n ien mit den Aussparungsflä­

chen erst während der Verdichtung der Höhenlin ienpolygone zu g l atten Höhen l i n ien gefunden werden können, bewirkt, daß man d ie gesamte I nformation der Ausspa­

rungsflächen auch noch bei der Verdichtung benötigt. Auf der anderen Seite steh t d e r Vorteil, daß in a l l den Maschen, für die der Pointer t H M (1, J ) = „-" ist, während d e r Ableitung d e r Höhenlin ien polygone nich t i nterpoliert werden m u ß .

Eine Ergänzung s e i noch zugu nsten der i n d iesem Absc h n itt angefü h rten Methode gemacht. Für die Berücksichtig u n g der Aussparu ngsflächen während der Ableitung der Höhen lin ien polygone benötigt man nicht d ie Koord i n aten der P u n kte der Aussparungspolygone, d iese können etwa auf einer externen Ein heit abgelegt werden, sondern nur d as Poi nterfeld tHM (1, J), da die Schn ittpu n kte der H öhen l i n ien mit den Aussparungsflächen erst bei der Verdichtung der Höhen l i n ien berechnet werden.

6. Schlußbemerkungen

Wie schon in Absch n itt 3 bemerkt wurde, kann eine wesentliche Speicherplatz­

ersparnis erreicht werden, wenn man d ie Schn ittpun kte der Polygone m it den Raster­

m aschen nicht berech n et und speichert . D ad u rch geht zwar die Defin ition des Poly­

gonabschn ittes i n der Masche verlo ren , da die Schn ittpun kte auf den Maschen se iten nicht mehr i m Speicher existieren, doch kann man nun d ie Polygo n i n formation, die f ü r eine Masche relevant ist, d ad u rch form u lieren, daß man d ie beiden P u n kte, d i e zwar nicht mehr in der Masche l iegen, d ie aber noch zu dem Polygonabsc h n itt, der d i e Masche d u rchläuft, g ehören, m itei n bezieht. D ie Verkn ü pfu n g mit dem Poi nter t H M ( 1 , J ) ist d a n n insoweit z u ändern, d a ß d e r Kopf, d e r z u m Poi nter 1 H M ( 1 , J ) gehört, jeweils auf den P u n kt zeigt, der noch nicht in der M asche (1, J ) l iegt (oder h öc hstens exakt auf einer der M aschenseiten der M asche ( 1 , J )), dessen N achfo lgerp u n kt aber u nter Berücksichtigung des U mfah rungss i n ns entweder i n der M asch e (1, J ) l iegt, oder auf einer Maschenseite der M asche (1, J ) l iegt oder auch au ßerhalb der Masche ( 1 , J ) l iegen kan n , wobei a b e r dann die l i neare Verb i n d u n g der beiden P u n kte d ie Masche (1, J) schneiden m u ß.

(12)

ÖZIVuPh 7 1 . Jahrgang / 1 983/Heft 2 93 Beziehen wir uns auf die Abb. 4 des Abschn ittes 3, so m ü ßten wir zu nächst die Verkettung ändern, indem wir die Pointer (Verkettungen) der Köpfe auf den jeweiligen Vorgängerpu n kt zeigen lassen u nd sodann sämtl iche Schnittp u n kte der Polygone m it dem Höhen raster, also sämtliche P u n kte, d ie mit dem Buchstaben S beg i n ne n , herausstreichen.

Bezüglich der Verkettungsstruktu r ist der Fall interessant, bei welchem i n nerhalb einer Masche kein Polygonpunkt l iegt, d ie Masche aber den noch von einer Polygon­

seite gesch n itten wird . I m nachfolgenden Beispiel haben wir diesen Fall herausgeg rif­

fen .

5 P2 P3

V /

4

p�

/

"['.... P4

�PS 3

2

I= I 2 3 4 5

Abb. 9 Verkettung der PointeriHM (1, J) mit einem Aussparungspolygon ohne Berechnung der Schnittpunkte auf den Maschenseiten

Der Vollständigkeit halber können wir noch die vier fehlenden Poi nter d es Rasters von Abb. 9 angeben . Wenn wi r d ie vom Polygon P 1 bis P 5 eingeschlossene Fläche als Aussparungsfläche betrachten, so ergibt sich für d ie Pointer t H M (2, 2), tHM (3, 2) u n d t HM (3, 3) der Wert „ - " , das heißt, d iese M aschen sollen völlig frei von Höhen l i nien bleiben, h i ngegen erhält der Poi nter t H M (1 , 4) den Wert + ", also sollen Höhen linien, die i n der Masche (1 , 4) verlaufen, gezeich net werden.

I n Abb. 9 wurden die L isten kö pfe, auf die der Pointer t H M ( 1 , J ) zeigt, n icht eingezeich net. Sie sind bei d iesem Beispiel auch nicht notwendig, d a jede M asche von höchstens einem Polygon geschn itten wird .

Das Sam meln d e r I nformation über Aussparu ngsflächen erfolgt w i e i n Ab­

schn itt 3. Über den Pointer t HM (1, J ) wird der Startpu n kt gefu nden, und ü ber d i e kreisförmige Liste d e r Polygon p u n kte werden d a n n s o lange Fortsetzungspunkte gesammelt, bis ein Polygonpunkt au ßerhalb der aktuellen M asche (1, J ) l iegt. Bei­

spielsweise für die Masche (2, 1 ) der Abb. 9 wi rd zunächst über den Pointer tH M (2, 1 )

(13)

94 ÖZfVuPh 71 . Jahrgang / 1 983/ Heft 2

der Punkt P 4 gesammelt, danach P 5, der in nerhalb der M asche (2, 1 ) liegt u n d schließlich P 1 , d e r au ßerhalb d e r Masche l iegt u nd damit d e r letzte relevante P u n kt für die Masche (2, 1 ) ist.

Absch l ießend sei noch der G ru ndgedan ke der gesamten Konzeption für die Verwaltung der Aussparungsflächen angedeutet. Es wurde Wert d arauf g elegt, daß sämtliche Polygone Punkt für P u n kt n u r ein einziges Mal bearbeitet werden, näm lich bei der Verkettung und der Aufbereitung der Poin ter t H M (1, J). N ach d iesem Vorberei­

tungsschritt wird i m mer n u r mehr lokale I nformation, d ie sofort über die Pointert H M (1, J ) erhalten werden kan n , benötigt.

Literatur

Aha, A. V., J. E. Hopcroft, J. D. U//man (1 975): The design and analysis of computer algorithms. Addison-Wesley Company, X + 470 Seiten.

Berztiss, A. T. (1 971 ): Data structures. Theory and practice. Academic Press. London, New York, XII + 442 Seiten.

Ebner, H., B. Hofmann-Wellenhof, P. Reiß, F. Steidler (1 980): H I FI - Ein M inicomputer­

Programmsystem für Höheninterpolation mit finiten Elementen. Zeitschrift für Vermessungswe­

sen, Heft 5, Mai 1 980, Seiten 21 5-224.

Hofmann-Wellenhof, B. (1 981 ): The use of linear lists for the derivation of contour lines from heights at a regular grid and along irregular break lines. Manuscripta geodaetica, Vol. 6 (1 981 ), Seiten 355-374.

Horowitz, E., S. Sahni (1 978): Fundamentats of computer algorithms. Pitman, London, XIV + 626 Seiten.

Knuth, D. E. (1 973): The art of computer programming. Band 1 . Fundamental algorithms.

Addison-Wesley Publishing, XXI + 638 Seiten.

Koch, K. R. (1 973): Digitales Geländemodell und automatische Höhenlinienzeichnung.

Zeitschrift für Vermessungswesen, Heft 8, August 1 973, Seiten 346-352.

Kruse, 1. (1 979): TASH - Ein System zur EDV-unterstützten Herstellung topographischer Grundkarten. Hannover. OK 528.93, Seiten 95-1 07.

Sünkel, H. (1 980): A general surface representation module designed for Geodesy. Reports of the Department of geodetic science. No. 292. The Ohio State University, Columbus, Ohio, VI + 1 58 Seiten.

Winter, R. (1 980): Vergleich digitaler Geländemodelle. 1 4th Congress of the I nternational Society for Photogrammetry. Hamburg, 1 3.-25. Juli 1 980.

Manuskript eingelangt: Oktober 1 982.

Referenzen

ÄHNLICHE DOKUMENTE

tung und Archivierung der Satellitendaten mitgezählt wird, nicht aber der Bau und Betrieb der Satelliten und Sensoren, und auch nicht die Personen, welche

aus kann man nun aber auch folgern, daß eine konforme Abbildung einer Fläche in die Ebene dann entsteht, wenn man irgendwelche isother­. men Koordinaten auf der

Sollen nur Richtungen oder nur Quasistrecken gemessen werden, dann müssen bekanntlich für den Rückwärtsschnitt aus Richtungen oder den sogenannten

Jahrgang/1 987 /Heft 3 Um eine Neuberechnung der Transformation für jeden Punkt zu vermeiden, kann auch folgender Weg eingeschlagen werden: die Restklaffungen werden pro

Die kurzen Darstellungen von Aufgabengebieten, über historische Entwicklungen, von aktuellen Problemstellungen und Forschungsprogrammen sollen lediglich einen Eindruck vom

Über diese Station wird an anderer Stelle berichtet; hier soll einiges über Grazer Beiträge zur Theorie der Erdmessung, also zur physikalischen Geodäsie, erzählt werden..

Damit können etwaige zeitliche Änderungen in den Gezeitenparametern nachgewiesen werden und auch de1aillierte Aussagen über die S1ruktur der Erde, insbesondere des Kerns,

die Angabe des Anfangspunktes einer Klotoide A auf der G ru ndtangente, die einen Punkt mit der Ordinate y durch laufen soll oder die Bestimmung einer Klotoide, die durch