Günter Redl, Michael Lorenz,Michael Papauschek Höhere technische Bundeslehr- und Versuchsanstalt Mödling

Erzeugung fraktaler Landschaften

Kurzzusammenfassung:

von Schülern entwickelte Programme zum Erzeugen einer fraktalen Landschaft werden vorgestellt

 

Lehrplanbezug:

Geradengleichung, Iteration

 

 

Mediales Umfeld:

Dateien auf der Diskette:

FRAC1.PAS; FRAC1.EXE; FRAC2.PAS; FRAC2.EXE

NOLAND.EXE; POPC.EXE

 

Hintergrund:

Im Schuljahr 1992/93 ersuchten mich Schüler eines 4. Jahrgang, ihnen in einigen Stunden die Grundlagen der Chaostheorie sowie der fraktalen Geometrie vorzutragen. Ich habe diesem Wunsch gerne entsprochen, mußte mich mich jedoch selbst erst einlesen und vorbereiten. In 9 Unterrichtsstunden habe ich dann dieses hochinteressante Wissensgebiet im Unterricht vorgetragen. Zum besseren Verständnis benutzte ich verschiedene Sharewareprogramme zum Visualisieren der Begriffe am Computer.

Eine Stunde wurde den Methoden zur Erzeugung fraktaler Landschaften gewidmet. Für dieses Teilgebiet hatte ich jedoch kein passendes Programm zur Verfügung. Zwei meiner Schüler ("EDV Experten") stürzten sich sofort auf das Thema und brachten mir bereits nach kurzer Zeit lauffähige Programme. Beide haben inzwischen maturiert und studieren an der TU Wien. Ihre Programme haben sie immer weiter verbessert. Beide haben bei ihrer Arbeit viel an mathematischen Wissen dazugewonnen.

Beide haben sich sofort bereit erklärt, ihre Arbeiten im Rahmen der AMMU vorzustellen.

Ich möchte mich an dieser Stelle bei meine ehemaligen Schülern

 

Michael Lorenz und Michael Papauschek

sehr herzlich bedanken.

 

Methoden zur Erzeugung fraktaler Landschaften:

 

Dieses Teilgebiet ist am stärksten durch kommerzielle Wünsche gefördert worden. Ergebnisse dieser Förderung konnten bereits 1983 im Film "Star Trek II" bewundert werden, in dem durch eine Computeranimation ein Wüstenplanet in einen erdähnlichen Planeten verwandelt wurde.

 

1) Landschaften durch Zerteilen

 

Ausgangspunkt jeder Landschaftserzeugung ist ein zweidimensionales Koordinatennetz, das wir in die xy - Ebene eines dreidimensionalen Koordinatensystems gelegt denken können. Den Gitterpunkten werden nun durch verschiedene Algorithmen Höhenwerte in z - Richtung zugeordnet.

 

Beim Erzeugen einer Landschaft durch Zerteilen erhalten wir die Höhenwerte durch beliebige Wiederholung der folgenden Schritte:

· ) Ziehe eine zufällige, orientierte Gerade durch das Koordinatennetz

· ) Erhöhe alle Gitterpunkte links der Geraden um den Wert D

· ) Erniedrige alle Gitterpunkte rechts der Geraden um den Wert D

 

Das Entstehen einer Landschaft braucht allerdings sehr viele Wiederholungen (mehr als 500), bis ein einigermaßen realistisches Bild entsteht. Trotzdem haben beide Schüler diesen Algorithmus in ihren Programmen benutzt.

 

2) Landschaften durch Mittelpunktverschiebung

 

Die Erzeugung von Landschaften nach dieser Methode beruht auf einer Anwendung des folgenden ebenen Algorithmus auf das Koordinatennetz:

Gegeben sei eine Strecke. Man bestimmt den Mittelpunkt der Strecke und verschiebt diesen um einen zufälligen Wert in orthogonaler Richung zur Ausgangsstrecke. Auf die beiden entstehenden Strecken wendet man den Algorithmus wieder an, wobei allerdings die Schiebrichtung immer orthogonal zur Ausgangsstrecke bleibt.

Eine Anwendung dieses Algorithmus auf das Koordinatennetz liefert bei jedem Teilungsschritt aus jeder Netzmasche vier neue Maschen, deren Eckpunkt mit zufälligen Höhen versehen sind.

Diese Methode liefert bereits nach ca. 20 Schritten ein passables Ergebnis.

 

 

Die Funktionsweise der Programme:

 

Die folgenden Kurzbeschreibungen stammen von den Programmautoren selbst. Ich möchte ihnen auch für diese Arbeit sehr herzlich danken.

 

1) Erläuterungen zu Frac1.pas und Frac2.pas von Michael PAPAUSCHEK:

 

Beide Programme sind in Borland Pascal 6.0 geschrieben, und berechnen eine fraktale Landschaft nach dem Prinzip der Flächenteilung. Dabei wird eine Ebene durch eine zufällig errechnete Linie geteilt. Eine der beiden Seiten wird nun angehoben. So entsteht nach mehreren Iterationen (Schleifendurchläufen) ein Gebirge. Anschließend wird die Landschaft in Höhenschichtlinien geteilt und eingefärbt.

 

Im Programm Frac1.pas wird diese Landschaft aus der Vogelperspektive (Landkarte) dargestellt. Das Programm Frac2.pas stellt nach der Berechnung (Abbruchmöglichkeit mit ‘x’) die Landschaft axonometrisch dar. Man kann diese nun mit den Tasten 4, 6, 8 und 2 (am Zehnerblock) verschieben. Weiters kann man jederzeit (nach der Berechnung) mit der Taste ‘s’ die momentane Landschaft speichern, oder mit ‘l’ eine zuvor gespeichert Landschaft laden.

 

2) NOLAND Version 2.0 Rev.00 Copyright (c) 1995,96 Michael Lorenz

 

NOLAND ist ein Programm zur Generierung und Darstellung von fraktalen Landschaften. Lauffähig ist das Programm auf 386 (oder höher) mit VGA- Grafikkarte mit VESA-Unterstützung (VBE). Sollte ihr VGA-BIOS keine VESA-Unterstützung haben, vielen Grafikkarten liegt ein VESA-Treiber

bei. Es sind aber auch Shareware-Treiber erhältlich (z.B. UNIVBE).

 

Nach dem Start von NOLAND befindet man sich im Hauptmenü. Zur Zeit sind noch nicht alle Menüpunkte verfügbar!

Mit der Funktion "generieren" lassen sich neue Landschaften erstellen oder schon errechnete weiterbearbeiten. Sie können die Berechnung jederzeit unterbrechen, um sich die Landschaft nach z. B. 15 Iterationen anzuschauen. Nach jeder neuen Generierung sollte man die Landschaft ein- bis zweimal mit der Funktion "glätten" bearbeiten, um eine natürliche Darstellung zu erhalten.

Anschließend läßt sich die Landschaft mittels "3D darstellen" sichtbar machen.

Die eingeschränkte Funktionalität dieser Version von NOLAND ist auf den frühen Entwicklungsstand und der geringen Freizeit des Autor (Student) zurückzuführen.

Außderdem läßt die Performence noch sehr zu wünschen übrig. Daher ist geplant, das Programm auf 32Bit-Speicherzugriff und -arithmetik umzuschreiben. Weiters soll eine schnellere 3D-Berechnung mittels Festkommazahlen und Assemblerkodierung entwickelt werden.

 

Auch weitere Funktionen sind geplant:

- Vorbearbeitung der Landschaft zur Erstellung von Schluchten, Kratern,

Felswänden,...

- Schnelleres Glättungverfahren ( jetzt Mittelwertbildung über 9 Punkte )

- Einstellung der Perspektive, des Lichtvektors, der Entfernung

- Auswahl von verschiedenen Farbdarstellungen

- Wahl des Hindergrundes und der Sichtweite

- Darstellung bis zu 16 Mio. Farben

- Veränderung der Landschaftsgröße

- Speicherung von Landschaften und Farbeinstellungen

 

Falls Sie Anregungen oder Fragen haben, schreiben sie mir:

 

Michael Lorenz, Meggaugasse 35, 1230 WIEN

 

PS: Das beiliegende Programm POPC.EXE ist ein Test- und Diagnoseprogramm für Ihren PC. Bitte ausgiebig testen!