home *** CD-ROM | disk | FTP | other *** search
/ Computer Club Elmshorn Atari PD / CCE_PD.iso / pc / 0600 / CCE_0660.ZIP / CCE_0660 / FRACTALS.II / FRACTEXT.LST < prev    next >
File List  |  1990-08-20  |  24KB  |  437 lines

  1.  
  2.                       *** Eine kleine Einführung ***
  3.  
  4. Die 'fraktale' Geometrie ist ein jüngerer Zweig der Mathematik, der we-
  5. gen seines großen Rechenaufwandes erst in heutiger Zeit mit leistungs-
  6. fähigen Computern verwirklicht werden konnte. Mit der Grundfigur, dem
  7. sogenannten 'Urapfelmännchen', entdeckte der Wissenschaftler B. Mandel-
  8. brot den Einstieg in eine faszinierende Welt der Computergrafik. Ver-
  9. größerungen aus dem Randbereich der Grundfigur lassen immer feinere
  10. Strukturen erkennen, von denen nicht nur eine eigenartige Faszination
  11. ausgeht, sondern auch Wissenschaftler schon zu vielen Spekulationen über
  12. Aufbau und Ordnung in der Natur veranlaßt haben. So erinnern fraktale
  13. Strukturen oftmals an eine Küstenlandschaft oder an meteorologische
  14. Sattelitenbilder. Ordnung und Chaos scheinen in immer wieder neuen
  15. Variationen eine merkwürdige Wechselbeziehung einzugehen, deren Gesetz-
  16. mäßigkeiten auch heute noch nicht ganz erforscht worden sind.
  17. Mittlerweile gibt es eine Vielzahl an Veröffentlichungen und Literatur,
  18. auf die wir den interessierten Leser verweisen möchten. Sinn und Ziel
  19. unseres Programmes ist es daher, die Schönheit fraktaler Landschaften
  20. mit einem leistungsfähigen Rechner auszuloten. Zwar eignet sich unser
  21. Programm nicht zur Iteration farbiger Bilder - wir kennen jedoch kein
  22. Programm, mit dem so umfangreiche Bildbearbeitungen möglich sind, so
  23. daß auch schwarzweiße Bilder respektabel aussehen! In dieser Version
  24. haben wir neben vielen anderen Verbesserungen die mathematischen Rou-
  25. tinen ausgebaut. Damit läßt sich noch eimal beträchtlich in die Tiefe
  26. vorstoßen um neue, faszinierende 'Landschaften' zu entdecken. Die Be-
  27. schleunigung der Berechnung ist nicht immer erwünscht; und in den in-
  28. zwischen bekannten 'Sekunden'-Programmen wird als Folgeerscheinung in
  29. der Regel ein Verlust an Genauigkeit in Kauf genommen!
  30. Inzwischen wurde jedoch von Michael Kofler in der 'mc'-Zeitschrift eine
  31. leistungsfähige Bildinterpolation vorgestellt, die wir (als Option) in
  32. unser Programm integriert haben. Bei einer sehr geringen Fehlerrate
  33. - unter 1% - kann die Iterationsgeschwindigkeit mehr als verdoppelt
  34. werden.
  35.  
  36. Grundlagen:
  37. Kernstück eines 'Fractals' ist die komplexe Zahlenebene, in dem die X-
  38. Koordinate des Bildschirms dem Realteil, entsprechend die Y-Koordinate
  39. dem Imaginärteil entspricht. Dividiert man nun Bildschirmbreite bzw.
  40. Bildschirmhöhe durch den gesuchten Wertebereich X-min bis X-max (ent-
  41. sprechend Y-min bis Ymax), so erhält man für jeden Bildpunkt einen
  42. definierten Real- bzw. Imaginärwert.
  43. Beide Werte gehen nunmehr in einen Iterationsprozeß ein, der verein-
  44. facht als folgende Funktion beschrieben werden kann:    F(Z)=(Z*Z)+C
  45. Diese Formel wird solange aufgerufen bis ihr Betrag, auch als 'Radius'
  46. bezeichnet einen bestimmten Grenzwert überschreitet. Gleichzeitig wird
  47. ein Iterationszähler ('Tiefe') bei jedem Durchlauf um eins erhöht.
  48. Wird nun der Betrag der Funktion auch nach 'n'-Durchläufen nicht größer
  49. als der 'Radius', so wird der Iterationsprozeß abgebrochen, wenn
  50. 'Tiefe = Tiefemax' ist. 'Tiefemax' muß vor dem Funktionsaufruf fest-
  51. gelegt worden sein. Wird dieser Wert erreicht, so spricht man von der
  52. eigentlichen Mandelbrotmenge deren Grundfigur das 'Apfelmännchen', be-
  53. nannt nach seinem Aussehen, ist. Wird der Iterationsprozeß vorher ab-
  54. gebrochen, so wird dem entsprechendem Bildschirmpunkt der Iterations-
  55. zähler 'Tiefe' zugeordnet und in einem Feld mit dessen X,Y-Koordinaten
  56. abgespeichert. Diesem Tiefenwert wird eine Farbe zugeordnet; in un-
  57. serm Fall schwarz für einen ungeraden und weiß für einen geraden
  58. Tiefenwert.
  59. Während bei der Mandelbrotmenge Real- und Imaginärwert abhängig vom je-
  60. weiligen Bildpunkt sind, wird bei der Juliamenge mit einem konstanten
  61. Real- bzw. Imaginärwert gearbeitet, der vorher festgelegt werden muß.
  62. Folglich hat jeder Punkt der komplexen Zahlenebene eine eigene Julia-
  63. menge. Daher gibt es auch keine Julia-'Grundfigur'.
  64.  
  65.  
  66.                       *** Bild - Iteration ***
  67.  
  68. Mit diesem Programm können sowohl die Mandelbrotmenge, das sogenannte
  69. 'Apfelmännchen', als auch die 'Julia-Menge' schwarzweiß mit Hilfe sehr
  70. schneller Maschinensprache-Routinen dargestellt werden.
  71. Bis an die Grenze der Rechengenauigkeit (max. ca. 15 Nachkommastellen)
  72. können Fractale beliebig vergrößert werden. Hierbei benutzt das Pro-
  73. gramm jeweils die für die Vergrößerung optimale Rechengenauigkeit, wo-
  74. bei 16-, 32-, 48- und 64Bit - Festkommaroutinen benutzt werden. Die
  75. automatische Anpassung läßt sich auch abschalten, wobei zu beachten
  76. ist, daß die jeweilige Rechengenauigkeit nicht überschritten werden
  77. sollte:
  78.          a)  16-Bit:  2 Nachkommastellen (Grundfigur und erste Vergr.)
  79.          b)  32-Bit:  5 Nachkommastellen
  80.          c)  48-Bit: 10 Nachkommastellen
  81.          d)  64-Bit: 15 Nachkommastellen
  82.  
  83.  NEU: e) optionaler 32-Bit-Turbo-Modus als sehr schnelle Alternative
  84.          mit fest eingestelltem Radius '8'. Diese 32-Bit-Option kann
  85.          nur manuell eingestellt werden und erreicht nicht ganz die
  86.          Genauigkeit ihres Originals, dafür aber einen kräftigen Ge-
  87.          schwindigkeitszuwachs! Versuchen Sie damit einmal Vergrößer-
  88.          ungen im 'Antennenbereich' des Apfelmännchens. Besonders im
  89.          Zusammenhang mit der einstellbaren Druckerausgabe (s. "Super-
  90.          format") lohnt sich dieser Modus! 
  91.  
  92. Intern ist die Genauigkeit noch um etwa 2 Stellen größer, damit die Ko-
  93. ordinaten zweier benachbarter Pixel noch unterschieden werden können.
  94. Während jede Mandelbrotmenge eine Vergrößerung der Grundfigur ist,
  95. existieren bei der Juliamenge durch die Faktoren Cx und Cy unendlich
  96. viele Varianten, aus denen jeweils gezoomt werden kann.
  97.  
  98. Für die Iteration eines Bildes wird neben den Bildausschnittskoordina-
  99. ten X-min, X-max (reelle Achse) und Y-min, Y-max (imaginäre Achse)
  100. die Iterationstiefe, also die maximale Anzahl von Iterationen pro Bild-
  101. punkt benötigt. Dieser Wert beträgt maximal 4095, wobei bei zunehmender
  102. Vergrößerung dieser Wert hochgesetzt werden muß. Daher dauert die Be-
  103. rechnung eines stark vergrößerten Bildes auch entsprechend länger.
  104.  
  105. Das zweite Abbruchkriterium für die Iteration ist der 'Radius', der
  106. angibt, daß bei Überschreitung eines kritischen Werts die Iteration
  107. abgebrochen werden soll. Dieser Wert ist im Mandelbrot-Modus fest auf
  108. 4 eingestellt, wogegen er für die Julia-Iteration zwischen 4 und 10
  109. variiert werden kann. Dadurch läßt sich ein 'kosmetischer' Effekt
  110. erzielen, der mit zunehmender Vergrößerung des Radiuswertes das Bild
  111. im Randbereich insgesamt etwas ausgeglichener erscheinen läßt. Alter-
  112. nativ läßt sich hier für die Mandelbrotmenge der "32-Bit-Turbo-Modus"
  113. einstellen. Durch seinen vergrößerten Radiuswert auf 8 sollte er aber
  114. als eigenständige Option aufgefaßt werden (s. auch weiter oben).
  115.  
  116. Die Julia-Konstanten 'Cx' und 'Cy' können direkt mit der 'Zeige Bild-
  117. koordinaten' - Funktion aus einer Mandelbrotmenge übernommen werden,
  118. wenn diese mit  >Return<  verlassen wird. Anschließend können diese
  119. Werte unter 'Diskrete Eingabe - Juliamenge' verwendet werden.
  120. Um einen Überblick über die jeweilige Juliamenge zu erhalten, sollten
  121. die Bildausschnittskoordinaten zunächst mit etwa ±2 eingestellt werden.
  122. Beim 'Zoomen' einer Juliamenge beiben Cx und Cy unverändert, werden
  123. also nicht neu definiert.
  124.  
  125. Die Julia-Iteration ist auf ein 32Bit - Zahlenformat beschränkt, daher
  126. läßt sich der Iterationsmodus hier nicht verändern. Daraus folgt, daß
  127. Cx, Cy - Werte nur aus Mandelbrotmengen übernommen werden sollten,
  128. wenn diese sich ihrerseits innerhalb der Auflösung des 32Bit-Zahlen-
  129. bereichs bewegen!
  130.  
  131. Nach Eingabe der notwendigen Daten kann die Bilditeration direkt akti-
  132. viert werden. Diese läßt sich der Escape-Taste nach jeder Zeile abbre-
  133. chen und später fortsetzen -  vorausgesetzt, die bisher berechneten
  134. Tiefenwerte sind noch vorhanden! Diese müssen also eventuell abgespei-
  135. chert werden. Näheres zu den Tiefenwerten siehe unter Bildbearbeitung.
  136. Alternativ kann mit dem alten Bild weitergearbeitet werden, wenn statt
  137. 'Iteration' der 'Abbruch'-Button gedrückt wird.
  138.  
  139. Noch eine Bemerkung, falls Ausschnittsparameter aus anderen Programmen
  140. übernommen werden sollen. Viele Programme halten leider die mathemati-
  141. sche Konvention nicht ein, daß die Abszisse (x-Achse) mit zunehmenden
  142. Werten nach rechts, die Ordinate (y_Achse) nach oben zeigt. Dies merkt
  143. man daran, daß z.B. die Grundfigur mit ihrer 'Antenne' nach rechts weist
  144. - die Abszisse zeigt nach links ! - oder Bildausschnitte wie gespiegelt
  145. aussehen - die Ordinate weist nach unten ! In diesem Fall sollte man
  146. die Vorzeichen der Parameter ändern und das fehlerhafte Programm schleu-
  147. nigst vergessen !
  148.  
  149.  
  150.                     *** Bild - Interpolation ***
  151.  
  152. Bei aktivierter Bildinterpolation braucht nicht mehr jedes Pixel durch
  153. die zeitaufwendige Iteration berechnet zu werden. Vielmehr wird von be-
  154. nachbarten Punkten auf den Tiefenwert dazwischenliegender Punkte ge-
  155. schlossen. Dies funktioniert etwa wie folgt:
  156. - Die erste Zeile wird normal iteriert.
  157. - Von der 3. Zeile wird jeder zweite Punkt iteriert.
  158. - Die zwischenliegenden Punkte werden interpoliert: haben die benach-
  159.   barten Punkte den gleichen Tiefenwert, so erhält auch der zu inter-
  160.   polierende Punkt diesen Wert - sind sie verschieden, so muß auch der
  161.   Tiefenwert dieses Punktes neu iteriert werden.
  162. - Genauso werden die Punkte der zweiten Zeile interpoliert, indem die
  163.   darüber- und darunterliegenden Tiefenwerte der ersten und dritten
  164.   Zeile miteinander verglichen werden.
  165. - Jetzt kann mit der 5. Zeile (wie bei der 3.) fortgefahren werden.
  166.  
  167. Je nach Komplexität des Bildes wird die Iteration durch die Interpo-
  168. lation etwa um den Faktor 2 beschleunigt. Für die vordefinierte Grund-
  169. figur sinkt die Rechendauer im 16-Bit-Modus z.B. von 87 auf 34 Sekunden.
  170. Durch die Interpolation entstehen natürlich Fehler, die aber im allge-
  171. meinen vernachlässigbar sind (Lagefehler unter 1%).
  172.  
  173. Die Iteration mit eingeschalteter Interpolation kann bei >ESC< natürlich
  174. erst abgebrochen werden, wenn alle zwischenliegenden Punkte berechnet
  175. worden sind.
  176.  
  177.  
  178.                       *** Bild - Bearbeitung ***
  179.  
  180. Bei starker Vergrößerung ist in vielen Fractalen von der eigentlichen
  181. Struktur oft nicht viel zu erkennen ('Gewusel !'). Werden Tiefenwerte
  182. jedoch geschickt zusammengefaßt, so lassen sich die eigenartigen
  183. Strukturen der Mandelbrotmenge wie 'Seepferdchen' oder Spiralen oft
  184. viel besser erkennen. Hierzu dient das Menü 'Farbeinstellung'.
  185. Zur Bedienung der einzelnen Menüpunkte werden diese mit der Maus ange-
  186. klickt (oder mit der Tastatur gewählt).
  187.  
  188. - Nach Eingabe eines zu löschenden und/oder zu setzenden Tiefenwert-
  189.   bereichs wird das Bild entprechend der Tiefenwert-Datei neu darge-
  190.   stellt.Im Ausgangszustand nach der Iteration ist jeder ungerade Tie-
  191.   fenwert gesetzt, jeder gerade Wert (außer der maximalen Tiefe) ge-
  192.   löscht (Tasten: <l> [löschen] und <s> [setzen]).
  193.  
  194. - Mit 'Einzelwerte' wird zu jedem Bildpunkt der zugehörige Tiefenwert
  195.   bestimmt (Taste <e>).
  196.  
  197. - Durch 'Zeige Einstellung' erhält man einen Überblick über die bisher
  198.   vorgenommenen Veränderungen (Taste <a>).
  199.  
  200. - Mit 'Speichern' wird das Bild in den Bildspeicher 0 übernommen (Taste
  201.   <f>); mit 'Zurück' wird das Menü verlassen (Taste <Esc>).
  202.  
  203. - Der 'Undo'-Button (bzw. Taste) macht die letzte Änderung rückgängig.
  204.  
  205. - Die Tiefenwerteinstellung kann global verändert werden, wenn von einem
  206.   bereits bearbeiteten Bild die 'Farbtabelle' geladen wird. Das aktuelle
  207.   Bild wird dann mit 'Zeichnen' anhand dieser Tabelle neu gezeichnet.
  208.   Somit ist es also überflüssig, bei jeden neuen Bildausschnitt die not-
  209.   wendige Farbzuordnung jedesmal neu vorzunehmen (Taste <l>).
  210.  
  211. Ist das Bild breiter als 500 Pixel, so wird vor dem Zeichnen die Ein-
  212. stellbox vom Bildschirm entfernt. Wenn die 'Biene' als Maussymbol er-
  213. scheint, wartet das Programm auf einen Maustastendruck (bzw. auf Betäti-
  214. gung der Leertaste), um das Einstellmenü neu einzublenden.
  215.  
  216.  
  217.                         *** 'Superformat' ***
  218.  
  219. Mit dieser neuen (etwas unbescheiden bezeichneten) Option kann die vom
  220. Bildschirm vorgegebene Auflösungsgrenze wesentlich erhöht werden.
  221. Hierzu wird das Bild in Streifen von jeweils 16 Zeilen berechnet und
  222. in der für 9-Nadel-Drucker größtmöglichen Auflösung von 240 Pixel/Zoll
  223. in 2 Streifen ausgedruckt. Damit ist eine Bildbreite von maximal 1920
  224. Pixeln auf einem 9-Nadel-Drucker im Format DIN A4-quer möglich.
  225.  
  226. Bei 24 Nadlern werden lediglich 180 Pixel/Zoll verwendet, was - der viel
  227. kleineren Nadeln wegen - dennoch ein besseres Bild ergibt. Bei dieser
  228. Auflösung sind Bilder im Format DIN A4 quer maximal 1440 Punkte breit.
  229.  
  230. Nur für 8/9-Nadel-Drucker:
  231. Leider entspricht die horizontale Auflösung nicht der vertikalen; ein
  232. Bild mit der Größe 1000 * 1000 Pixel wird daher verzerrt ausgedruckt.
  233. Um dies auszugleichen, muß (auf meinem Drucker) die Bildbreite 1,588 mal
  234. so groß sein wie die Bildhöhe. Bei einem quadratischen Ausschnitt be-
  235. trägt also die Bildhöhe z.B. 1920/1.588 = 1209 Zeilen. Ist der gezoomte
  236. Bildausschnitt nicht quadratisch, so muß das eingestellt Breiten-/Höhen-
  237. verhältnis ebenfalls berücksichtigt werden. Beträgt dieser Wert etwa
  238. 1 : 1.4, so verringert sich die Bildhöhe auf z.B. 1920/(1.588 * 1.4) =
  239. 864 Zeilen. Das Programm berechnet diese Größen (als Vorschlag) auf
  240. der Basis maximaler Bildbreite. Bei einer geringeren Bildbreite muß die
  241. Bildhöhe selbst ausgerechnet werden. Dies gewährleistet absolut ver-
  242. zerrungsfreie Bilder.
  243.  
  244. Wahlweise können (statt der direkten Ausgabe auf den Drucker) die Druck-
  245. daten in ein Drucker-File umgeleitet werden. Der Name dieser Druckdatei
  246. ist mit "DRUCKER.PRN" fest voreingestellt. Für die Ausgabe wird der ak-
  247. tive Pfad verwendet. Da diese Datei sämtliche Steuercodes enthält, läßt
  248. sie sich problemlos z.B. mit "Datei drucken" auf dem Desktop ausgegeben!
  249. Diese Option ist empfehlenswert, wenn der Rechner über Nacht laufen soll
  250. (und der Drucker stören würde) oder mehrere Kopien benötigt werden.
  251.  
  252. Da bei der Iteration im Superformat eine nachträgliche Bildbearbeitung
  253. nicht möglich ist, wird beim Ausdruck die jeweils letzte (oder eine
  254. nachzuladene Farbeinstell-Tabelle) berücksichtigt. Es empfiehlt sich
  255. also, von einem auszudruckenden Ausschnitt im Superformat zunächst ein
  256. verkleinertes Abbild auf dem Bildschirm zu iterieren und nachzubearbei-
  257. ten. Der maximale Tiefenwert sollte dann nicht mehr verändert werden,
  258. da oberhalb der eingestellten Werte keine Pixel gesetzt werden.
  259. Bei Beachtung dieser Vorgaben werden Sie fantastische Bilder erhalten,
  260. deren Berechnung (der erhöhten Auflösung wegen) jedoch ziemlich lange
  261. dauern kann. Die Interpolation daher immer eingeschaltet lassen!
  262.  
  263.  
  264.                       *** Druck - Routinen ***
  265.  
  266. Dieses Programm arbeitet mit den meisten Druckern zusammen. Unter dem
  267. Menü "Hilfen" kann zwischen IBM/Epson kompatiblen 9-Nadel-Druckern und
  268. NEC P6 kompatiblen 24-Nadlern umgeschalten werden.
  269.  
  270. -  Die Hardcopy-Routine druckt das Bild unverzerrt im Maßstab 1:1 mit
  271.    seiner Umrandung aus. Eine evt. Anpassung an andere 9-Nadler düfte
  272.    unproblematisch sein. Einige Angaben zum Drucker-Code:
  273.  
  274.    Druckmodus 80 Pt/Zoll ................... Chr$(27);'*';Chr$(4)
  275.    Zeilenvorschub von n/216 Zoll ........... Chr$(27);'J';Chr$(n)
  276.    Carriage Return (ohne Zeilenvorschub) ... Out 0,13
  277.  
  278.    Eine Hardcopy-Routine für 24-Nadler ist (noch) nicht integriert.
  279.  
  280. -  Bei vorhandenen Tiefenwerten läßt sich ein Bild auch in mehreren
  281.    Graustufen ausdrucken. Bei 9-Nadlern wird die größtmögliche Auf-
  282.    lösung von 240 Pixeln pro Zoll gewählt. Dabei werden 5 Graustufen,
  283.    S/W und 3 Zwischentöne, unter Verwendung einer 3*2-Matrix produziert.
  284.    Bei 24-Nadlern wird eine Auflösung von 180 Pixeln pro Zoll verwen-
  285.    det (2*2-Matrix).
  286.    Druckmodus 240 Pt/Zoll .................. Chr$(27);'*';Chr$(3)
  287.  
  288.    Bei 24-Nadlern bewirk 'ESC J' einen Zeilenvorschub von n/180 Zoll.
  289.    Druckmodus 180 Pt/Zoll .................. Chr$(27);'*';Chr$(39)
  290.  
  291. -  Im Superformat wird ebenfalls diese Auflösung verwendet.
  292.  
  293.  
  294.                       *** Datei - Operationen ***
  295.  
  296. 1.Das Programm ermittelt bei Programmstart den aktuellen Pfad, aus dem
  297.   es gestartet wurde. Die Hilfstexte-Datei muß sich in diesem Ordner
  298.   befinden. Zum Laden z.B. einer Bilddatei kann jeder beliebige Ordner
  299.   eingestellt werden. Auf diesen Pfad greift das Programm dann zu, wenn
  300.   es z.B. die Tiefenwerte des Bildes nachladen soll. Zum Laden einer
  301.   Bilderserie wird ebenfalls auf den gerade aktiven Ordner zugegriffen.
  302.  
  303. 2.Nur beim Abspeichern auf Disketten wird deren Speicherplatz geprüft.
  304.   Der Grund ist, daß die 'Disk-Free' - Funktion des alten Betriebs-
  305.   systems sehr langsam arbeitet. Das kann evt. Probleme mit einer RAM-
  306.   disk geben, falls diese beim Abspeichern 'überläuft' !
  307.  
  308. 3.Es werden folgende Dateitypen verwendet:
  309.   - '*.FRC'-Dateien sind Bilder; Backup-Dateien als 'FRA'.
  310.   - Tiefenwertdateien haben die Extension 'TW'.
  311.   - Farbtabellen enden mit 'TAB'.
  312.   Andere Endungen akzeptiert das Programm nicht!
  313.   Die Extension muß beim Abspeichern nicht mit eingegeben werden.
  314.  
  315.   Mit dem beiliegendem "FRC_PIC.PRG" können abgespeicherte Bilddateien 
  316.   jedoch in das gängige Screenformat '*.PIC' gewandelt werden und sind
  317.   damit anderen Programmen zugänglich!
  318.  
  319. 4.Fractals-Dateien bestehen neben der Grafik aus einem 180 Byte großen
  320.   Parameterblock, der u.A. die Informationen enthält, die man mit
  321.   'Bild-Info' abrufen kann. Andere Bildformate lassen sich nicht laden!
  322.   Bilder und Tiefenwert-Dateien aus älteren 'Fractals'-Versionen sind
  323.   nicht mehr kompatibel, was leider nicht zu umgehen war !
  324.  
  325. 5.In der Tiefenwert-Datei werden die iterierten Tiefenwerte komprimiert
  326.   abgespeichert. Wie bei jeder Datenkompression ist ihre Effektivität
  327.   von der Komplexität der Daten abhängig. Diese werden zwischen 50-90%
  328.   ihrer Ursprungsgröße komprimiert. TW-Dateien können trotz Kompression
  329.   auf über 300 kByte anwachsen. Daher kann es vorkommen, daß eine Datei
  330.   überzulaufen droht, wenn sie zu klein dimensioniert wurde. In diesem
  331.   Fall wird die Iteration mit einer entsprechenden Warnmeldung abgebro-
  332.   chen und kann nur fortgesetzt werden, wenn die Daten abgespeichert,
  333.   und der TW-Speicher unter 'Speicher-Info' vergrößert wird. Eventuell
  334.   müssen dann Bildspeicher gelöscht werden.
  335.   In der abgespeicherten Tiefenwert-Datei werden außerdem die Daten des
  336.   Verteilungsdiagramms und die gesetzten und gelöschten Tiefenwerte im
  337.   Farbeinstellmenü gesichert. Diese ist also um einige kByte größer als
  338.   die im RAM befindliche Tiefenwert-Datei.
  339.  
  340.  
  341.                           *** Verschiedenes ***
  342.  
  343.  1.Mit 'Bild-Info' werden die Bilddaten eines vorhandenen Bildes ange-
  344.    zeigt. Mit >P< lassen sich diese Daten in kleiner Schrift auch auf
  345.    den Drucker ausgeben.Dabei wird neben dem Bildnamen, falls vorhanden,
  346.    auch das aktuelle Datum ausgedruckt. Mit >N< kann der Bildname geän-
  347.    dert werden.
  348.  
  349.  2.Es können, sofern der Speicherplatz ausreicht, 12 Bilder mit ihren
  350.    Daten ins RAM geladen werden. Der 'Bildspeicher 0' ist ein Zwischen-
  351.    speicher, auf den fast jede Routine zugreift. In diesem befindet sich
  352.    also z.B. das fertig gezeichnete oder gerade geladene Bild. Wird ein
  353.    Accessory benutzt, das den Bildschirm verändert, so kann mit 'Zeige
  354.    Bildspeicher 0' das aktuelle Bild restauriert werden. Accessories,
  355.    die in Fenstern laufen (Schließfeld !), sollten auf jeden Fall ge-
  356.    schlossen werden, da sie von diesem Programm 'übermalt' werden!
  357.  
  358.  3.Am Programm-Anfang wird der Tiefenwertspeicher in seiner Größe fest-
  359.    gelegt, abhängig vom zur Verfügung stehenden Speicherplatz. Er ist
  360.    mindestens 50 kByte groß. Seine Größe läßt sich durch die Datenkom-
  361.    pression nur annähernd vorherbestimmen und ist daher möglichst groß
  362.    gewählt.
  363.  
  364.  4.Die 3D-Routine ermöglicht eine räumliche Darstellung von Fractalen,
  365.    wobei die Tiefenwerte als 'Höhenwerte' interpretiert werden.
  366.    Die Neigung bzw. Drehung erfolgt gradweise durch die Cursortasten.
  367.    Die Bildhöhe läßt sich über den Amplitudenfaktor zwischen 0,5 und
  368.    4 der Grundhöhe (ca. 50 Pixel) verstellen. Tastencode: >a<
  369.    Bei einer negativen Amplitude wird die maximale Tiefe als "Gebirge",
  370.    bei einer positiven Amplitude als "See" dargestellt.
  371.    Da für die Projektion die Tiefenwert-Datei ausgewertet wird (wie in
  372.    der Farbeinstellung), muß diese zum aktuellen Bild vorhanden sein !
  373.    Abbruch der Routine mit >Esc<. Ein Weiterzeichnen ist nicht möglich.
  374.  
  375.  5.Mit 'Bilderserie laden' lassen sich - ähnlich einer Diashow - mehrere
  376.    Bilder nacheinander laden, die mit >Return< in die Bildspeicher über-
  377.    nommen werden können. Hierzu wird das aktuelle Directory nach Bildern
  378.    durchsucht, die die Extension "FRC" oder "FRA" haben. Das Einlesen
  379.    läßt sich mit der Escape-Taste abbrechen.
  380.  
  381.  6.Mit dem Betriebsmodus 'Bilder zusammenstellen' können Bilder auf dem
  382.    Bildschirm beliebig auf- und nebeneinander platziert werden. Eine
  383.    Bearbeitung derartiger Bildzusammenstellungen ('Zoomen') ist aller-
  384.    dings nicht möglich! Für diese Operationen muß der Betriebsmodus auf
  385.    'Bilder bearbeiten' stehen! Beim Zusammenstellen können entweder die
  386.    Bildspeicher 1 bis 12 benutzt oder Bilder direkt geladen werden.
  387.  
  388.  7.Das Verteilungsdiagramm zeigt die Häufigkeit jedes Tiefenwerts über
  389.    die gewählte Iterationstiefe. Die Verteilung sollte 'sanft' auslau-
  390.    fen - andernfalls wurde wahrscheinlich eine zu geringe Rechentiefe
  391.    gewählt.
  392.    Dies gilt natürlich nicht für die eigentliche Mandelbrotmenge, deren
  393.    Punkte immer die maximal eingestellte Rechentiefe annehmen.
  394.  
  395.  8.Ein Programmabsturz durch Fehlermeldungen des Betriebssystems wird
  396.    jetzt weitgehend abgefangen. Problematisch kann die Verwendung des
  397.    B:-Laufwerks sein, wenn lediglich das Laufwerk A: vorhanden ist !
  398.  
  399.  9.Mit 'File löschen' können bei Verwendung der Wildcards '*' und '?'
  400.    auch Dateigruppen gelöscht werden. Nach Auswahl einer oder mehrerer
  401.    Dateien erfolgt noch eine Sicherheitsabfrage.
  402.  
  403. 10.Da das Programm mit (fast) jedem Speicherplatz läuft, kann es
  404.    passieren, daß einige Funktionen nicht arbeiten, wenn nicht genug
  405.    Speicherpatz vorhanden ist. Die betrifft vor allem das 'Zoomen', da
  406.    hier ein Zweitbildspeicher benutzt wird. Eventuell müssen dann eini-
  407.    ge Bildspeicher gelöscht oder der Tiefenwertspeicher verkleinert
  408.    werden.
  409.  
  410. 11.Einige Funktionen des Pull-Down-Menüs können mit der Tastatur aus-
  411.    geführt werden. Möglich ist:
  412.    - 'Zeige Bildspeicher 1-10' durch die Funktionstasten >F1< bis >F10<
  413.    - 'Bild ablegen 1-10' durch  >SHIFT F1<  bis  >SHIFT F10<
  414.    - 'Bildspeicher zeigen 0' durch  >UNDO<
  415.    - 'Bild-Info' durch  >HELP<
  416.    - 'Bild löschen' durch  >DELETE<
  417.    - 'Schirm löschen' durch  >CLR/HOME<
  418.  
  419. 12.Zur Zahleneingabe verwende ich eine eigene Routine, die nur die Ein-
  420.    gabe von Zahlen zuläßt. Zum Editieren werden die Pfeiltasten, Escape,
  421.    Delete, Backspace, ClrHome, Insert und Undo verwendet.
  422.  
  423. 13.Als kleines Zugeständnis an alle Farbmonitorbesitzer haben wir die 
  424.    Datei "FARBFRAC.GFA" beigefügt. Besitzen Sie GFA-Basic 3.x können 
  425.    Sie nun vorhandene Tiefenwertdateien farbig auswerten. Beachten Sie 
  426.    aber die verringerte Bildschirmauflösung im Farbmodus!
  427.  
  428. 14.Verbesserungsvorschläge und Kritik werden gerne entgegengenommen !!
  429.    Dieses Programm wird nun schon seit drei Jahren ständig weiterent-
  430.    wickelt. Es wurde bislang im PD-Pool des GFA-Clubs veröffentlicht.
  431.  
  432. Für eine Entdeckungsreise ins fractale Universum wünschen wir viel
  433. Vergnügen ... und gute Einfälle bei der Überarbeitung von Bildern!
  434.  
  435.        Harald und Martin Hansen     Weserstr. 82   1000 Berlin 44
  436.  
  437.