CHAOSultdGEM Version 6.10 15.10.1993 von Th. Morus Walter INHALTSVERZEICHNIS i Inhaltsverzeichnis 1 Copyright 1 2 Allgemeines 1 2.1 M”glichkeiten und Grenzen . . . . . . . . . . . . . . . . . . . 2 2.2 Untersttzte Fraktaltypen . . . . . . . . . . . . . . . . . . . 3 3 Installation 4 3.1 Hardwarevorraussetzungen . . . . . . . . . . . . . . . . . . . . 4 3.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.3 Lieferumfang . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.4 allgemeine Hinweise zum Betrieb . . . . . . . . . . . . . . . . 6 4 Danksagung 7 5 Geschichtliches 7 5.1 Entwicklungsstand . . . . . . . . . . . . . . . . . . . . . . . 7 5.2 Žnderungen gegenber frheren Versionen . . . . . . . . . . . 8 5.3 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5.4 Updates und Bezugsm”glichkeiten . . . . . . . . . . . . . . . 9 6 Fehler (und was man dafr halten k”nnte) 10 6.1 eliminierte Fehler . . . . . . . . . . . . . . . . . . . . . . 10 6.2 bekannte Fehler . . . . . . . . . . . . . . . . . . . . . . . . 10 6.3 unbekannte Fehler . . . . . . . . . . . . . . . . . . . . . . 12 6.4 Fehler in der Anleitung . . . . . . . . . . . . . . . . . . . . 12 7 zu dieser Anleitung 12 I CHAOSultd gem 14 1 Allgemeine Bedienungshinweise 14 1.1 Booten des Programmes . . . . . . . . . . . . . . . . . . . . . 14 1.2 Dialoge . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3 Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.4 Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.5 Selektieren von Objekten im Objekt-Fenster . . . . . . . . . 17 1.6 Bedienungselemente zum Aufruf von Funktionen . . . . . . . 19 1.7 Online-Hilfe . . . . . . . . . . . . . . . . . . . . . . . . . 21 2 Bilder erzeugen 22 2.1 neue Bilder - Eingabe der Parameter . . . . . . . . . . . . . . 22 2.2 šbernahme von Daten aus bestehenden Objekten . . . . . . . 25 2.3 Berechnung von Bildern . . . . . . . . . . . . . . . . . . . . 26 2.4 Neu berechnen . . . . . . . . . . . . . . . . . . . . . . . . 28 2.5 extended Neu, Block, . . . . . . . . . . . . . . . . . . . . 29 INHALTSVERZEICHNIS ii 3 Bilder verwalten 30 3.1 Bilder konvertieren . . . . . . . . . . . . . . . . . . . . . . 30 3.2 Bilder packen . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.3 Film edieren . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.4 L”schen . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4 Anzeigefunktionen 33 4.1 Bilder anzeigen . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2 Bildvergleich . . . . . . . . . . . . . . . . . . . . . . . . 35 4.3 Block zeigen . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.4 Konstante anzeigen . . . . . . . . . . . . . . . . . . . . . . 35 4.5 Koordinaten anzeigen . . . . . . . . . . . . . . . . . . . . . 36 4.6 neues Objekt . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.7 Bild-Parameter anzeigen . . . . . . . . . . . . . . . . . . . . 36 4.8 Farben . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.9 Fraktal-Parameter anzeigen . . . . . . . . . . . . . . . . . . 37 4.10 Info anzeigen . . . . . . . . . . . . . . . . . . . . . . . . 37 5 Input/Output 38 5.1 Speichern . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.2 Laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.3 Drucken . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.4 Clipboard . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 6 Einstellungen 40 6.1 Speicher-Info . . . . . . . . . . . . . . . . . . . . . . . . 40 6.2 Einstellungen I . . . . . . . . . . . . . . . . . . . . . . . 40 6.3 Einstellungen II . . . . . . . . . . . . . . . . . . . . . . . 41 6.4 Parameter-Voreinstellungen . . . . . . . . . . . . . . . . . . . 42 6.5 Parameter speichern . . . . . . . . . . . . . . . . . . . . . 42 II die Fractal-Routinen 43 1 der Algorithmus 43 2 Parameter 44 2.1 ben”tigte Parameter . . . . . . . . . . . . . . . . . . . . . . 44 2.2 Eingabe der Parameter . . . . . . . . . . . . . . . . . . . . . 45 2.3 3d Fractale . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.4 freie Fractale . . . . . . . . . . . . . . . . . . . . . . . . 48 3 untersttzte Optionen 50 3.1 Parameter anzeigen . . . . . . . . . . . . . . . . . . . . . . . 50 3.2 Bild-Info anzeigen . . . . . . . . . . . . . . . . . . . . . . 50 3.3 Punktinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.4 Block/Konstante zeigen . . . . . . . . . . . . . . . . . . . . 51 3.5 neu berechnen . . . . . . . . . . . . . . . . . . . . . . . . . 51 INHALTSVERZEICHNIS iii III die Hpfer-Routinen 52 1 der Algorithmus 52 2 Parameter 52 3 untersttzte Routinen 53 IV die Feigenbaum-Routinen 54 1 Algorithmus 54 2 Parameter 54 3 untersttzte Routinen 54 V die XCHAOS-Routinen, Barnsley und Attraktoren 55 1 Barnsley-Fractale 55 2 seltsame Attraktoren 57 1 COPYRIGHT 1 1 Copyright CHAOSultd gem V6.10 1993 by Never Ready Software, Th. Morus Walter Th. Morus Walter Schulstr. 22 W-8401 Pentling (Federal Republic of Germany) Tel. 0941 949802 Dieses Programm ist Postcardware! Das Programm darf und soll frei kopiert und weitergegeben werden, wo- bei aber alle in Abschnitt 3.3 genannten Dateien kopiert werden mssen - bzw. die diese Dateien enthaltenden Archive. Komerzielle Nutzung ist ausgeschlossen, mit Ausnahme der fr den Vertrieb von PD-Disketten blichen Kopiergebren. Die Aufnahme in eine Public- Domain Disketten-Serie bedarf der Zustimmung des Autors. Die Aufnahme des Programmes in Internet-Fileserver oder in Mailboxen ist erlaubt und erwnscht, vorausgesetzt fr das Abrufen des Programmes wird keine Gebr verlangt. Wem das Programm gef„llt, und wer es nutzt, ist verpflichtet, mir - dem Autor - eine Ansichtskarte als kleines Dankesch”n zu schicken. So erfahre ich ein bisschen was ber die User meines Programmes (wom”glich gibt es gar keine) und habe etwas (hoffentliche positive) Reso- nanz, die Rckseite der Postkarte l„sst sich ja fr Anregungen und konstruk- tive Kritik (andere wird berlesen) nutzen (ich bitte allerdings um Verst„nd- nis, dass ich schriftliche Fragen nur bei frankiertem Rckumschlag beantwor- ten kann). Ich denke, eine solche Postkarte ist nicht zu viel verlangt, fr ein Programm wie CHAOSultd gem. Hinweis Die Benutzung des Programmes geschieht auf eigene Gefahr. Der Autor ga- rantiert weder fr irgendwelche Sch„den (am Rechner oder auch am Be- nutzer) noch fr die korrekte Funktionsweise des Programmes. Insbesondere wird auch nicht garantiert, dass den erzeugten Bildern wirklich die beschrie- benen Algorithmen zugrundeliegen, wenngleich ich natrlich davon ausgehe. noch ein Hinweis Wider die neue (und alte) Rechte! Nie wieder Krieg! Nie wieder Faschismus! 2 Allgemeines CHAOSultd gem V6.10 ist eine Weiterentwicklung von CHAOSultd gem V6.01, das wiederum eine Weiterentwicklung von CHAOSultd V5.0 ist. 2 ALLGEMEINES 2 CHAOSultd gem ist, wie das Suffix gem schon andeutet, konsequent GEM- konform programmiert (von Programmfehlern abgesehen). Das Programm sollte deshalb in jeder Aufl”sung und auf jeder Graphikkarte laufen. Zur Ausgabe wird ausschliesslich das VDI verwendet. Trotz der Tatsache, dass die GEM-Konformit„t immer noch wenigstens zwei Nachteile gegenber der Version 5.0 mit sich bringt und dass der Funktions- umfang hinsichtlich der fehlenden Hardcopy-Routine immer noch gegenber Version 5.0 zurckbleibt, erkl„re ich CHAOSultd gem V6.10 hiermit (an- ders als noch V6.00 und V6.01) zum Nachfolger der Versionen V5.0x, die ich nicht mehr weiterentwickeln werde. Die Nachteile sind zum einen, die geringere Anzeigegeschwindigkeit, ein Ef- fekt, der sich in Grenzen halten drfte (nachgemessen hab ich's nicht) und (schlimmer) die Unm”glichkeit der Darstellung in ST-low durch Umschalten der Aufl”sung. Letzteres ist schon bitter, auf der anderen Seite arbeite ich eh meist nur in monochromer Aufl”sung. 2.1 M”glichkeiten und Grenzen Abgesehen von der endlichen Rechengeschwindigkeit und dem endlichen Speicher ist CHAOSultd gem ist praktisch grenzenlos (deshalb auch das ultd, das fr unlimited steht, im Namen). D.h. praktisch alle im normalen Betrieb auftretenden Einschr„nkungen sind durch Rechengeschwindigkeit und Spei- chergr”sse bedingt. Daneben gibt es die folgenden programmbedingten Einschr„nkungen: o maximal 9999 Objekte gleichzeitig im Speicher o Bildgr”ssen von 64-32000 x 40-32000 Pixel im einzelnen: - minimale Bildbreite: 64 Pixel - minimale Bildh”he: 40 Pixel - maximale Bildbreite und -h”he: 32000 Pixel - die Bildbreite muss durch 16, die Bildh”he durch 4 teilbar sein o 1-8 Bildebenen, d.h. 2-256 Farben; bei einer Bildebene (mono- bzw. ge- nauer duochrom) sind noch 2x2 und 4x4 Raster m”glich das ist eine echte Einschr„nkung: keine Untersttzung von High-/True- Color (bei den meisten Bildtypen ist das aber auch nicht sinnvoll) o maximal 32767 Bilder pro Film Anmerkungen: nicht alle Bilderzeugungsroutinen untersttzen alle Bildformate, insbeson- dere gibt es Routinen, die nur 2 Farben (und auch keine Raster) zulassen die theoretisch m”gliche Bildgr”sse von 32000x32000 Pixeln bei 256 Farben (8 Bildebenen) hat einen Speicherplatzbedarf von 976.5625 Megabyte (also 2 ALLGEMEINES 3 ca. 1 Gbyte). Zwar kann das Bild fr die Bildverwaltung gepackt werden, um es zu berechnen oder anzuzeigen muss die Bitmap aber entpackt vorliegen. Ich m”chte auch nicht wissen, wie lange es dauern wrde ein solches Bild mit ca. 109 Punkten zu berechnen. Noch eine weitere Anmerkung zur Speicherverwaltung: CHAOSultd gem verwendet an einigen Stellen in Zeigern -1l als Flag. Damit drften sich Schwierigkeiten bei Verwendung von Speicher oberhalb von 231 = 2 Gi- gaByte ergeben, insbesondere kann man1 wohl nicht mehr als 2 GigaByte Speicher nutzen. Ich betrachte diese Einschr„nkung allerdings als ausgespro- chen theoretisch (um 1 GigaByte Speicher auch nur zu l”schen - wenn einer tats„chlich soviel Speicher bezahlen kann - braucht eine 8 Mhz 68000 CPU (mit sowas arbeite ich immer noch) ca. 1000 Sekunden (1 Sekunde pro Me- gabyte habe ich mal abgesch„tzt, auch wenn es wohl sicher noch schneller geht) also eine viertel Stunde). 2.2 Untersttzte Fraktaltypen CHAOSultd gem ist modular aufgebaut - analog zu CHAOSultd V5.0, nur konsequenter, es gibt keine internen Berechnungsroutinen mehr. Das Pro- gramm besteht aus einem Hauptteil, der die Verwaltung der Bilder, das An- zeigen, Abspeichern etc. bernimmt, und mehreren Modulen, die Routinen zur Berechnung von Fraktalen bestimmter Typen zur Verfgung stellen. Derzeit existieren Module fr die folgenden Bildtypen: o Fractale Unter Fractalen im engeren Sinn verstehe ich hier Mandelbrot- , Julia- und Pickover-Mengen, letztere mit frei definierbarer Berechnungsformel2. Mandelbrot- und Julia-Mengen k”nnen auch in Pseudo 3d dargestellt werden. ____________________________________ 1wer will, kann sich jeder Stelle, an der ,man' steht, ,frau' (dazu) den- ken; der Verzicht auf diese Formen (ebenso wie auf den studentischen Plural (wieso eigentlich studentisch, msste das nicht studentInisch oder studieren- denisch heissen, konsequenterweise) ist nicht Ausdruck der Geringsch„tzung dieser Problematik, auch wenn es jetzt vielleicht so klingt, und der Autor zugibt nicht immer in der Lage zu sein, die Problematik so ernst zu nehmen, wie es viele andere tun; der Verzicht ist vielmehr Ausdruck der Tatsache, dass der Autor diese Formen nicht von Anfang an bercksichtigt hat und der Bequemlichkeit des Autors, die ihn daran hindert, jetzt nochmal alles daraufhin durchzusehen und zu „ndern; der Autor wendet sich im šbrigen gegen die Einfhrung von ,ders' als m„nnlichen Artikel Plural (statt ,die M„nner' wrde es dann ,ders M„nner' heissen) 2ich unterscheide in dieser Anleitung zwischen Fraktalen, als Oberbegriff fr alle berechneten Bilder (selbst wenn sie gar nicht fraktal sind), und Frac- talen im genannten engeren Sinn 3 INSTALLATION 4 Das Modul Fractale umfasst also genau die Bildtypen, die es schon in Fractal 4.3 (als einzige) und dann genauso in CHAOSultd V5.0 gegeben hat. o Hpfer (nach Barry Martin) o Feigenbaum-Diagramme o XCHAOS XCHAOS ist ein Modul, das verschiedenen Berechungsroutinen ge- meinsame Funktionen zur Parametereingabe etc. zur Verfgung stellt. Bei der Realisation einer solchen Berechungsroutine wird dann prak- tisch nur noch angegeben, welche Parameter gebraucht werden. Das reduziert das Schreiben neuer Routinen im wesentlichen auf die ei- gentliche Zeichenroutine, so dass ich weniger zu tun habe. Unter XCHAOS gibt es zur Zeit: - Barnsley-Fraktale - seltsame Attraktoren (Lorenz, R”ssler, etc.) o Iterierte Funktionen-Systeme, linear und nichtlinear Die Iterierten Funktionen-System sind bisher undokumentiert! Und zwar nicht, weil sie trivial zu bedienen sind, sondern weil ich nicht mehr mag (sorry). Wer weiss, was IFS sind (siehe z.B. einen recht gu- ten Artikel in der ST-Computer (11/91) und seiner Intuition folgt, hat sicherlich gute Chancen, die Routinen zu verstehen, sie folgen gleichen Konzepten wie die anderen Routinen auch. Einziger weiterer Hinweis: bei den Kopierern (linear/nichtlinear) muss man nach dem Parameter- dialog ein Bild-Objekt ausw„hlen, das als Startbild verwendet wird. Man hte sich ansonsten vor Speichermangel (da kann ich fr nichts garantieren). Sogesehen sind die IFS-Routinen bislang freak-only! (Bitte keine Anfragen zu diesem Thema, ich schreibe die Anleitung schon noch irgendwann, und dann kann man weitersehen. Ich glaube es ist trotz dieses Anleitungsmangels nicht ganz unsinnig, die Routinen mitzugeben.) 3 Installation 3.1 Hardwarevorraussetzungen CHAOSultd gem wurde auf einem Atari 520 ST+ mit TOS1.4, 4 MByte Speicher und einer 85 MByte Festplatte entwickelt und getestet. Das Programm sollte auf allen Atari ST, STE, TT, Falcon und Eagle Rech- nern laufen - mangels Hardware wurde das Programm aber nur auf der oben genannten Konfiguration getestet. 3 INSTALLATION 5 CHAOSultd gem sollte mit jeder Aufl”sung und Graphikkarte zusammenar- beiten, solange ein VDI-Treiber existiert. Mindestaufl”sung sind allerdings 640x200 Punkte, wobei sich bei 640x200 Punkten (ST-Mid) ein paar kleinere Unsch”nheiten ergeben (siehe Fehler, 6.2). Auf der Festplatte werden etwa vier- bis fnfhundert Kilobyte Platz ben”tigt und zwar fr das Programm an sich. Prinzipiell kann man das Programm also auch ohne Festplatte auf Diskette verwenden. Die Datenmenge berechneter Bilder ist nach oben offen. Speicher braucht das Programm natrlich auch, unter 1 MByte drfte we- nig gehen. CHAOSultd gem belegt - abh„ngig von der Zahl der Module die man l„dt - ca. 250-450 kByte Speicher fr Programm, Resourcedateien etc.. Dazu kommt noch der Speicherbedarf fr die Bilder. Minimum einige hundert Kilobyte, nach oben offen. Ein Drucker gleich welcher Art wird (noch) nicht untersttzt. 3.2 Installation Bei CHAOSultd gem von ,Installieren' zu reden ist eigentlich eine šbertreibung3. Das Schlimmste hat man schon hinter sich, wenn man in der Lage ist, diesen Text zu lesen, n„mlich das Auspacken der Archive. Hat man dies geschafft, kann man entweder CHAOS.APP gleich starten, oder aber - wenn einem der Platz, an dem das Programm jetzt steht, nicht gef„llt - man kopiert das Programm CHAOS.APP in ein beliebiges Verzeichnis auf der Festplatte (oder auf eine Diskette, was aber natrlich weniger empfehlenswert ist) und den Ordner CHS_ULTD.GEM in das gleiche Verzeichnis. Vielleicht noch kurz ein Wort zur Erkl„rung. Der Ordner CHS_ULTD.GEM enth„lt die Resource-Dateien, die Einstellungsdatei und die externen Modu- le. Letztere besitzen die Dateikennung (Extension) .XCH, was natrlich fr eXdended CHaos steht. M”chte man nicht alle externen Module verwenden, was ja auch Speicher kostet, so kann man die entsprechenden Module ohne weiteres l”schen (nebst zugeh”riger Resourcedatei; man sollte natrlich noch irgendwo eine vollst„ndige Kopie haben) oder durch Žndern der Dateiken- nung deaktivieren. Die richtige Zuordnung zwischen den Modulen und den zugeh”rigen Datein- amen wird dem geneigten Leser als šbungsaufgabe berlassen. Ausserdem befinden sich im Ordner HELP die Hilfs-Texte fr das Hilfs- System. ____________________________________3 auf PCs ist das Installieren von Programmen ein beliebtes Unterhaltungs- spiel fr DiskJockeys nach dem Motto, sie haben ein Dutzend Disketten und schieben die in bestimmter Reihenfolge in das Laufwerk; bei gr”sseren Pro- grammen hat man dann wieder nur eine Scheibe, dafr aber ein CD-Rom, dessen Inhalt die Festplatte auch problemlos (ber)fllen kann 3 INSTALLATION 6 3.3 Lieferumfang CHAOSultd gem V6.10 umfasst die folgenden Dateien und Ordner (nach vollst„ndigem Entpacken aller Archive, siehe README.TXT): CHS_ULTD.APP das Programm READ_ME.TXT CHS_ULTD.GEM\ CHS_ULTD.RSC die Resourcedatei CHS_ULTD.SET die Einstellungen und diverse Module FRACTAL.XCH HUEPFER.XCH FEIGENBM.XCH XCHAOS.XCH IFS.XCH sowie deren Resourcen FRACTAL.RSC HUEPFER.RSC FEIGENBM.RSC XCHAOS.RSC IFS.RSC HELP\ *.HLP die Hilfstexte ANLEITNG\ CHS_ULTD.DVI, -.TXT, -.PS die Anleitung im TEX , ASCII und Postscript-Format BEISPIEL\ Ordner mit Beispielen (unberechnet) *.CHS 3.4 allgemeine Hinweise zum Betrieb Es ist wenig ratsam, CHAOSultd gem auf einem 8Mhz ST ohne Bildschirm- beschleuniger einzusetzen. (Es ist berhaupt wenig ratsam, einen ST ohne Bildschirmbeschleuniger zu betreiben.) Wer es doch tut ist selber schuld und muss eben geduldig sein. Ich selbst verwende NVDI, und musste (leider) CHAOSultd speziell daran anpassen, da NVDI offenbar das Arbeiten mit Bitmaps, die mehr Bildebenen besitzen als der Bildschirm, nicht mag. Man sollte darberhinaus stets sicherstellen, dass dem System noch Speicher brigbleibt (kann man in den Einstellungen eintragen), da die Dialogboxen dann den Bildschirmhintergrund sichern k”nnen und dieser nach Verlassen der Dialogbox nicht neu gezeichnet werden muss. Wenn man sehr grosse Bilder (z.B. 3200x2000 Punkte in 2 Farben) er- zeugt, dann kann schon das blosse Anzeigen von Bildern mehrere Sekunden vom Aufrufen der Funktion bis zum ™ffnen des Fensters (oder Umschal- ten des Bildschirms) dauern. Schliesslich muss das Bild erst entpackt werden etc. CHAOSultd gem zeigt diese Operationen gegenw„rtig durch nichts an (auch nicht durch den Mauszeiger), man wundere sich also nicht, wenn auf eine Aktion in einem solchen Fall erst mal nichts passiert. 4 DANKSAGUNG 7 Es ist sogesehen in jedem Fall ratsam, erstmal kleinere Bilder zu erzeu- gen und dann (eventuell) schrittweise zu grossen Bildern berzugehen. Dabei sollte man stets bedenken, dass der Speicherbedarf und (meist) auch der Re- chenaufwand mit der Fl„che des Bildes (mal Farbtiefe) und nicht mit der Seitenl„nge geht (d.h. ein Bild der Gr”sse 1280x800 ist viermal so gross wie 640x400 und nicht nur doppelt) - eigentlich trivial, aber man macht sich das oft nicht klar. 4 Danksagung CHAOSultd gem V6.10 wurde im wesentlichen mit Hilfe folgender Program- me entwickelt: o Pure C 1.0, PureDebugger o PASM Assembler o Interface Resource Construction Set o Tempus Editor o Gemini (als Grundlage fr alles andere) o Lindner-TEX (fr diese Anleitung) CHAOSultd gem verwendet MyDials von Olaf Meisiek (Interface) mit dem NKCC Tastaturhandler von Harald Siegmund. besonderen Dank an o Michael G. fr die Fliesskommaroutinen der freidefinierten Fractale und einige (in frheren Versionen) gefundene Fehler 5 Geschichtliches Nein, die lange Laberei ber die Vorgeschichte kommt jetzt nicht. Wer sie noch nicht kennt und unbedingt lesen will, sei auf die Anleitung zur Version 5.0 verwiesen (Abschnitt 5.1), aber es lohnt sich eigentlich nicht. 5.1 Entwicklungsstand CHAOSultd gem ist nicht fertig! Im Gegensatz zur Version 6.0x sind inzwischen allerdings die meisten und dringendsten Verbesserungen realisiert, obwohl ich eigentlich gar nicht so viel Zeit gehabt h„tte, wie ich mir genommen habe. Einige Funktionen, die geplant sind, aber immer noch fehlen 5 GESCHICHTLICHES 8 o Hardcopy CHAOSultd gem verfgt ber keinerlei Hardcopy-Routine. Logischer- weise auch keine Druckereinstellung. Eine Hardcopy-Routine fr 24- Nadel-Matrixdrucker drfte aber schon irgendwann mal (wenn mein Drucker repariert ist und ich gleichzeitig Zeit und Lust habe) entste- hen - als externes Modul, so dass man dann auch Hardcopy-Routinen fr andere Drucker schreiben kann4 o Anzeige-Bilder konvertieren eine Konvertieren-Routine existiert mittlerweile, man kann damit aber nur Bild-Objekte konvertieren. Sollte ich es schaffen die Konvertierungs-Routinen zu optimieren, so dass sie einigermassen flott arbeiten, dann soll es sie sp„ter auch fr angezeigte Bilder (in der Anzeige) geben. o Neu berechnen fr IFS-Fraktale (naja, ob ich mir das jemals antue ...) o ettliche kleinere (zum Teil auch nur interne) Verbesserungen Und dann gibt es noch eine riesige Anzahl von Bildtypen, fr die man Be- rechnungsroutinen schreiben k”nnte. 5.2 Žnderungen gegenber frheren Versionen siehe hierzu die Datei CHANGES.TXT 5.3 Ausblick Wie schon gesagt, ist CHAOSultd gem V6.10 alles andere als fertig, die Entwicklung geht also weiter. Ideen, was alles ntzlich sein k”nnte habe ich jede Menge, Vorstellungen wie man diese Ideen realisieren k”nnte schon weniger. Am wenigsten habe ich Zeit, zumal ich mit eigentlich mit Quarks, Mesonen und Baryonen im NJL-Modell befassen sollte, um endlich Diplom- Physiker zu werden. Sollte irgendwer daran interessiert sein, an CHAOSultd V6.x mitzuwirken, so ist er (oder sie) herzlich eingeladen. Am einfachsten ist natrlich die Ent- wicklung neuer Berechnungsroutinen, da man hier eine definierte Schnitt- stelle hat (jedenfalls k”nnte ich sie definieren)5. Aber auch eine šbertragung ____________________________________4 wenn mir irgendwer einen guten Laserdrucker oder einen guten Farb- Tintenstrahl-Drucker schenkt, dann gelobe ich dafr eine Hardcopy-Routine zu schreiben (es darf auch ein Farb-Laser sein) 5im Moment ist die Schnittstelle noch nicht definiert, und sollte vor ei- ner Definition auch noch mal berarbeitet werden (solang nur ich daran rumpfusche scheint mir das nicht so wichtig). Da mir nicht bekannt ist, dass irgendwer ausser mir die Schnittstelle der Version 5.0 fr CHAOSultd-Module verwendet hat, spare ich mir diese Definition erstmal. Sollte es aber ernst- hafte Interessenten geben, so l„sst sich dieser Schritt allemal nachholen. 5 GESCHICHTLICHES 9 des Progammes in eine andere Sprache w„re denkbar, die Text-Strings des Hauptprogrammes sind bereits weitgehend in eine eigene Datei ausgelagert - bei den Berechnungsroutinen muss ich dies noch machen, aber das ist kein prinzipielles Problem - der Rest der Texte (eigentlich der Hauptteil) steht wie es sich geh”rt in der Resource-Datei. Hier stellt man natrlich gleich fest, so einfach ist es auch wieder nicht, Programmieren und zwar in C sollte man schon k”nnen. Ausserdem sollte man ber Pure C (andere C Compiler setzen noch mehr Programmierer- fahrung voraus, weil man dann die Kompatibilit„t testen muss und die ist schlecht, weil Pure C Parameter in Registern bergibt) und Interface (RCS) verfgen. Sind diese Vorraussetzungen gegeben, ist das Angebot ernst ge- meint. Nach der berragenden Resonanz auf CHAOSultd V5.0 (zwei Anrufer, die mit dem selbstenpackenden Archiv nicht zurechtkamen) habe ich aller- dings kaum noch Illusionen und deshalb wie gesagt erst mal darauf verzichtet die Schnittstelle auszuarbeiten und zu dokumentieren. Sollte jemand tats„chlich Probleme haben, interessante neue Fraktal-Typen fr CHAOSultd zu finden, dann sollte er - (pardon) sie - sich mal FractInt anschauen, ein PC (leider) Programm, das jede Menge Fraktal-Typen bietet. 5.4 Updates und Bezugsm”glichkeiten Updates wird es also sicher geben - irgendwann. Ich sehe mich ausserstande, selbst Updates zu vertreiben, auch nicht gegen Leerdiskette und frankierten Rckumschlag, ich habe schon genug zu tun - sorry. Wie also kommt man eventuelle neue Versionen von CHAOSultd. Erste M”glichkeit sind PD-Versender, ich gehe davon aus, dass CHAOSultd gem wie CHAOSultd V5.0 Aufnahme in die ST-Computer PD-Sammlung findet, und werde dort auch Updates abliefern. Gnstiger ist die zweite von mir selbst untersttzte M”glichkeit, CHAOS- ultd gem und kommende Updates via Internet zu beziehen. Gnstiger, weil es nichts kostet und weil Updates dort im allgemeinen schneller verfgbar sein werden. Internet ist ein Internationales Netzwerk, an das bespielsweise die Universit„ten angeschlossen sind, und in dem unter anderem FTP (File- Transfer-Protocoll) - Server existieren, von denen man PD-Software beziehen kann. Ich selbst werde CHAOSultd gem wie auch Updates auf den Servern der Uni Stuttgart (ftp.uni-stuttgart.de) und der TU Clausthal (ftp.tu- clausthal.de) deponieren.6 In Stuttgart findet man das Programm (bis- her) im Verzeichnis SOFT/ATARI/APPLICATIONS/MATH in Clausthal ____________________________________6 Die beiden Server habe ich ausgew„hlt, weil Stuttgart eine der schnell- sten Verbindungen nach Regensburg hat, und weil Clausthal das - soweit mir bekannt - bestorganisierte PD-Angebot fr Atari hat, sowohl was den Umfang betrifft, vor allem aber wegen der Kommentierung der Programme - an dieser Stelle herzlichen Dank an die Betreuer der beiden Server Stefan Haake (Stuttgart) und Wolfgang Ley (Clausthal). 6 FEHLER (UND WAS MAN DAFšR HALTEN K™NNTE) 10 in /PUB/ATARI/GRAPHICS/FRACTALS. Als dritte M”glichkeit b”te sich die Verteilung via Mailboxen (z.B. Maus- Netz) an, da ich aber kein Modem besitze, kann ich hier nur dazu auffordern, dass irgendwer (oder die Betreiber der Boxen) das Programm dort ablegt. 6 Fehler (und was man dafr halten k”nnte) " Programme laufen nicht" lautet bekanntlich eine m”gliche Formulierung von Murphy's Gesetz fr Programmierer. Nun am Ende der Programm-Entwicklung hat man es meist geschafft, diesen Satz im konkreten Einzelfall zu widerlegen (oder man hat kein Programm und braucht keine Anleitung zu schreiben) - jedenfalls mehr oder weniger. So ist es auch hier. Andererseits gibt es eine weitere, schw„chere Folgerung aus Murphy's Ge- setz die besagt, dass jedes nicht-triviale Programm mindestens einen Fehler enth„lt. Mit an Sicherheit grenzender Wahrscheinlichkeit trifft dies auch hier zu. Bevor Sie jetzt entsetzt das Programm wegwerfen, sollten Sie sich berle- gen, dass Sie das dann konsequenterweise mit allen anderen Programmen (einschliesslich des Betriebssystems) auch tun mssten. Ich habe CHAOSultd soweit m”glich getestet7 und es l„uft. Das Programm ist soweit m”glich fehlertolerant, sollte also auch bei Fehlbedienung nicht gleich schlappmachen8. 6.1 eliminierte Fehler siehe hierzu ebenfalls die Datei CHANGES.TXT 6.2 bekannte Fehler Einige kleinere Macken, die ich jetzt nicht mehr behebe, sind mir in V6.10 schon bekannt: o Startet man CHAOSultd in mittlerer-ST-Aufl”sung (bzw. irgendeiner Aufl”sung die einen 8x8-Font verwendet), so gibt es drei kleinere Pro- bleme mit den Dialogboxen. Das kleinste liegt im Programminfo, die erste Dialogbox, in der Bit- Image-Objekte angezeigt werden ger„t etwas durcheinander. Aber die dient eh nur meiner Angeberei und ist nicht so wichtig. ____________________________________7 naja man sollte das nicht zu w”rtlich nehmen, die weiteren Tests k”nnen ja jetzt Sie bernehmen 8allerdings ist es bei Parametern von Berechnungsroutinen teilweise m”glich ist, unsinnige Angaben zu machen, die nicht von der Eingaberoutine zurckgewiesen werden, dadurch aber auch nicht sinnvoll werden 6 FEHLER (UND WAS MAN DAFšR HALTEN K™NNTE) 11 Die beiden anderen Probleme befinden sich bei der Anzeige der Farbco- dierung von Fractalen (in der Haupteingabe-Dialogbox fr Fractalpara- meter) und in der Anzeige der Trafos linearer IFS in der Haupteingabe- Dialogbox fr IFS-Parameter (linear). In beiden F„llen werden die Informationen nicht korrekt angezeigt, entweder berdecken sich die Zeilen partiell oder einzelne Zeilen werden ganz verdeckt. Es ist lei- der nicht so viel Platz in den beiden Dialogen vorhanden, um dieses Problem zu beseitigen. (Die Daten werden aber korrekt verwaltet und k”nnen bei Aufruf der Unter-Dialoge fr ihre Eingabe gesichtet wer- den.) o Schneidet man Bl”cke aus Bildern aus, so hat man die M”glichkeit, das Markieren des Blockes mit oder ohne Shift zu starten (durch Mausklick). Mit Shift kann man den Block mit beliebigem Verh„lt- nis H”he zu Breite definieren, ohne Shift ist das Verh„ltnis fest und entspricht dem Verh„ltnis der Bildh”he zur Bildbreite. Dies soll eigent- lich dazu dienen, Bl”cke unverzerrt auszuschneiden. Unverzerrt bleiben die Bl”cke aber nur, wenn das neue Bild das gleiche H”hen/Breiten- Verh„ltnis aufweist wie das, aus dem man den Block ausschneidet. Andernfalls fhrt diese Methode genau zu den Verzerrungen die doch eigentlich vermieden werden sollten. Ansonsten enth„lt auch CHAOSultd gem V6.10 den schon in V5.0 bekann- ten Fehler bei den frei-definierten Fractalen (obwohl das jetzt eigentlich kein Fehler in CHAOSultd sondern einer in einer der Berechnungsroutinen ist): Berechnet man freie Fractale und verwendet in der Abbruchbedingung die 'xor'-Verknpfung, so erh„lt man (total) unterschiedliche Ergebnisse, je nachdem ob man mit der schnellen oder der exakten Berechnung arbeitet. This is not a feature, this is a bug! Das Ganze hat vermutlich folgenden Hintergrund: die Routinen zur Berech- nung freier Fractale ignorieren Fliesskommafehler jeglicher Art, insbesondere auch šberl„ufe9. Verwendet man nun die 'xor'-Verknpfung, so wird die Berechnung nicht ab- gebrochen, falls beide Bedingungen erfllt sind10, so dass es leicht zu einem šberlauf kommen kann (das kann man sich im Debugger auch anschauen). Anscheinend reagieren die beiden verschiedenen Fliesskomma-Routinen nun bei und nach dem šberlauf anders, so dass sich verschiedene Resultate er- geben. Dabei ist das Ergebnis der schnellen Berechnungsroutine dasjenige, das (logischen šberlegungen folgend, d.h. vielleicht) richtiger ist - richtiger ____________________________________9 als ich die Routinen geschrieben habe, bin ich davon ausgegangen, dass keine Fliesskommafehler auftreten; eine aufwendige Behandlung der Fliess- kommafehler schien also berflssig und wrde nur Zeit kosten (beim Ent- wickeln der Routine wie beim Berechnen der Bilder); sie jetzt einzufgen ist mir im Moment zu viel Arbeit 10wenn man an dieser Stelle ber den Sinn der Abbruchbedingung nach- denkt wird einem natrlich klar, dass 'xor' hier a priori nicht besonders sinn- voll ist, aber der Vollst„ndigkeit geh”rt es halt auch dazu 7 ZU DIESER ANLEITUNG 12 insofern, als hier trotz der Fliesskomma-šberl„ufe die Punkte als unendlich tief erscheinen. 6.3 unbekannte Fehler gibt es nach obigen allgemeinen šberlegungen sicherlich jede Menge. Ich hoffe, es treten wenigstens keine schwerwiegenden Fehler mehr auf. Kommt es bei der Benutzung von CHAOSultd zu irgendwelchen kritischen Situationen so empfehle ich die Bemerkung in der rechten oberen Bild- schirmecke zu beherzigen. Sie wurde unter anderem zu diesem Zweck dort installiert11. Sollten Sie einen Fehler finden, so drfen Sie ihn zun„chst einmal behalten. Sollte der Fehler reproduzierbar sein, so w„re ich darberhinaus fr eine ausfhrliche Beschreibung des Fehlers und seiner Erzeugung dankbar (be- halten mssen Sie ihn natrlich trotzdem erst mal, es besteht dann aber eine Chance, dass ich ihn eliminiere). 6.4 Fehler in der Anleitung Die Anleitung soll das Programm beschreiben. Tut sie das an irgendeiner Stelle nicht, so irrt die Anleitung und nicht das Programm12. Fr Druk-Feeler in Anleitung gilt die Devise: This is not a bug, this is a feature. Druckfehler in der Anleitung dienen der Auflockerung des Textes und sollen insbesondere denen, die sonst nichts verstehen, Gelegenheit zu Erfolgserleb- nissen geben, wenn sie welche finden. Insbesondere fehlen wahrscheinlich jede Menge Kommata. Wiederholungen in der Anleitung m”gen den einen oder anderen aufmerksa- men Leser (gibt's solche etwa) verwundern, sie entstanden einfach, weil ich die Anleitung nicht von vorn bis hinten geschrieben habe, und man eigentlich alles berall und auf einmal erkl„ren msste. 7 zu dieser Anleitung Real programmers don't read manuals heisst es, und ich mache das h„ufig genauso. Dennoch m”chte ich an dieser Stelle (was jetzt erst, nach so vielen Seiten) je- dem die Lektre der Anleitung nahelegen (auch wenn sie recht lang geworden ist). Man sollte sie wenigstens mal berflogen haben, da das Programm zwar mehr oder weniger konsequent in GEM eingebunden ist, viele der M”glich- keiten und Details des Programmes aber nicht sofort ersichtlich sind. ____________________________________11 darberhinaus soll diese Bemerkung natrlich zur Verbreitung von CHAOSultd beitragen, D. Adams zufolge ist sie dazu bestens geeignet 12an sich w„re es ja umgekehrt auch ganz nett, aber das Risiko ist mir zu gross; die Anleitung anzupassen ist in jedem Fall das kleinere šbel 7 ZU DIESER ANLEITUNG 13 Die Anleitung entstand unter Verwendung von Teilen der Anleitung von CHAOSultd V5.0, teilweise w”rtlich wie etwa der letzte oder der folgende Absatz. Wer CHAOSultd V5.0 kennt, kann die Anleitung sicherlich sehr viel schneller lesen, sollte die Anleitung aber trotzdem durchsehen. Der letzte Teil der Anleitung - Dateiformate und Schnittstelle fr die externen Routinen - fehlt, siehe Abschnitt 5.3. Die Anleitung ist - entsprechend der Modularit„t des Programmes - in meh- rere Abschnitte aufgeteilt. Im ersten Abschnitt wird lediglich die allgemeine Benutzung des Verwaltungsteiles, im wesentlichen ohne konkreten Bezug auf irgendwelche Berechnungsroutinen, beschrieben. Die Beschreibung der Berechnungsroutinen fr Fractale, Hpfer, Feigenbaumdiagramme etc. folgt dann in den weiteren Abschnitten. Bei der Beschreibung von CHAOSultd gehe ich im folgenden in etwa in der Reihenfolge vor, wie man sie auch bei der Benutzung des Programmes ge- braucht. Da keine konkreten Bilderzeugungsroutinen beschrieben werden, sollte man eventuell parallel entsprechende Abschnitte der folgenden Teile lesen, wobei die Fractal-Routinen wohl am ausfhrlichsten beschrieben sind. Bei den anderen Routinen wird ihre Kenntnis teilweise vorausgesetzt. Auch ist es natrlich sinnvoll, die diversen M”glichkeiten gleich auszupro- bieren; m”glicherweise wird erst an Hand des Programmes selbst, klar, wie die eine oder andere Bemerkung in der Anleitung gemeint ist (sorry, aber noch ausfhrlicher kann ich das Programm wirklich nicht beschreiben). Wird in der Anleitung auf Meneintr„ge oder Texte von Button verwiesen, so sind diese in Sans Serif gesetzt. Tasten erscheinen in Typewriter, auch Dateien werden hervorgehoben. (Leser der ASCII-Version dieser Anleitung haben davon leider garnichts.) Die zugrundeliegenden Algorithmen und die sich daraus ergebenden For- men werden nur ansatzweise beschrieben. Ich m”chte deshalb hier auf die einschl„gige Literatur verweisen: die meisten Anregungen habe ich den Sonderheften Computerkurzweil I-IV der Zeitschrift Spektrum der Wissenschaft entnommen. Sie sind zwar soweit ich weiss einzeln nicht mehr erh„ltlich, dafr gemeinsam in Buchform. Dort finden sich auch weitere Literaturangaben. In einem Artikel in der ST-Computer (11/91) ber Iterierte Funktionensy- steme wird unter anderem noch auf die folgenden beiden Werke verwiesen: H.-O. Pleitgen, D. Saupe (Hrsg), The Science of Fractal Images, Springer Verlag 1988 Benoit B. Mandelbrot, Die fractale Geometrie der Natur, Birkh„user 1987 14 Teil I CHAOSultd gem 1 Allgemeine Bedienungshinweise 1.1 Booten des Programmes Wird CHAOSultd gem gestartet13, so wird zun„chst die (Haupt-)Resource- Datei geladen, dann die Routinen; diese werden initialisiert, wobei sie ihre eigenen Resource-Dateien laden. Schliesslich werden noch die Voreinstellun- gen geladen, die Menleiste angezeigt und das Objekt-Fenster ge”ffnet. W„hrend des Ladens der Module wird eine Dialogbox angzeigt, in der dar- gestellt wird, welches Modul gerade geladen wird und welche Fraktal-Typen zur Verfgung gestellt werden. Scheitert die Initialisierung einer Routine, so wird diese gesperrt, was in der Dialogbox durch helle Schrift angezeigt wird; solche Routinen lassen sich nicht aufrufen. 1.2 Dialoge CHAOSultd verwendet FlyDial analoge MyDials (von Olaf Meisiek (Inter- face) mit dem NKCC Tastaturhandler von Harald Siegmund), die gegenber herk”mlichen GEM-Dialoge ettliche Vorteile bieten. Auch wenn solche Dia- logboxen mittlerweile recht bekannt sein drften - sie finden schliesslich im- mer ”fter Verwendung - sollen diese hier nochmals kurz erl„utert werden (ohne Anspruch auf Vollst„ndigkeit). `Fliegen' k”nnen die Dialoge durch das Eselsohr rechts oben (nur wenn der Speicher zum Sichern des Hintergrundes gereicht hat, sonst fehlt das Eselsohr). Klickt man es an, so kann man den Dialog auf dem Bildschirm verschieben. Dies lohnt sich vor allem auf Grossbildschirmen, oder (gelegent- lich) wenn der Dialog etwas verdeckt (wobei dann aber meist kein Platz ist, den Dialog weit genug wegzuschieben). Man kann einstellen, ob Dialoge je- desmal beim Aufrufen zentriert werden sollen oder ob sie an der alten Stelle erscheinen sollen (vgl. 6.2). Des weiteren sind MyDials weitgehend tastaturbedienbar. Button kann man anw„hlen, indem man den in ihnen unterstrichenen Buchstaben zusammen mit der Alternate-Taste drckt. Der Abbruch-Button (oder ein anderer der Exit-Button, auch Ok, wenn das der einzige Exit-Button ist) kann auch mit Undo ausgel”st werden. Button zum Selektieren einzelner Optionen erscheinen mit vorangestelltem Quadrat, das im selektierten Zustand angekreuzt wird, 'Radiobutton' also ____________________________________13 wie man dies macht, ist nicht Gegenstand dieser Anleitung, wer nicht weiss, wie man ein Programm startet, wird vermutlich auch nicht mehr aus CHAOSultd herausfinden, da auch das Beenden des Programmes nicht Ge- genstand dieser Anleitung ist. Ich will aber nicht schuld sein, wenn jemand bis zu seinem Lebensende mein Programm laufen lassen muss. 1 ALLGEMEINE BEDIENUNGSHINWEISE 15 Button von denen immer nur einer selektiert sein kann erhalten einen voran- gestellten Kreis, der beim selektierten Button ausgefllt wird. Das Ganze ist irgendwie Mac-„hnlich und sieht jedenfalls im Vergleich zu herk”mmlichen ST-Dialogen sehr edel aus. In Text-Feldern hat man die zus„tzlichen M”glichkeiten mit Shift-Cursor links ans den Anfang, mit Shift-Cursor rechts an das Ende des Text- Feldes und mit Control-Cursor links bzw. rechts Wortweise nach links und rechts springen. Im Prinzip kann man auch noch den Cursor in Text-Feldern mit der Maus setzen, dies funktioniert aber wegen eines Fehlers in den Routinen nicht rich- tig, wenn das Text-Feld ausser dem edierbaren Eintrag noch einen Maskentext enth„lt. Dafr hat man in allen Text-Feldern, in denen beliebige Zeichen eingegeben werden k”nnen (also nicht nur alphanumerische Zeichen sondern der gan- ze Ascii-Code) die M”glichkeit durch Drcken der Insert-Taste eine Box mit allen Sonderzeichen aufzurufen, aus der man mit der Maus ein Zeichen ausw„hlen kann (braucht man zwar in CHAOSultd nicht, ist aber trotzdem nett). Weiterhin werden Popup-Mens untersttzt, von denen CHAOSultd auch ausgiebig Gebrauch macht. Dialoge in CHAOSultd k”nnen auch in Fenster gelegt werden. CHAOSultd verwendet auch in Fenstern ausschliesslich modale Dialoge, d.h. solange ein Dialog-Fenster ge”ffnet ist, kann nicht weitergearbeitet werden, sondern es muss der Dialog bearbeitet und geschlossen werden bevor es weiter geht. Der Vorteil von Dialogfenstern ist begrenzt, wenn man nicht ein Multitasking-Betriebssystem verwendet (MultiGem, Magix, vor allem aber MultiTos). Ohne Multitasking-Betriebssystem erlauben Fenster-Dialoge le- diglich den Zugriff auf Accessories, mit erlauben sie anderen gleichzeitig lau- fenden Programmen weiterzulaufen und Ausgaben auf den Bildschirm (in Fenster natrlich) zu machen. In diesem Zusammenhang noch ein allgemeiner Hinweis. Pseudo- Multitasking-Systeme wie MultiGem und Magix sind darauf angewiesen, dass von den laufenden Programmen regelm„ssig AES-Event-Aufrufe kom- men (was immer das sein mag), da sie nur dann Prozesswechsel durchfhren k”nnen (d.h. zwischen den Programmen umschalten). CHAOSultd stellt dies w„hrend der Berechnung von Bildern nicht sicher, das wrde zuviel Rechen- zeit kosten. Bei der Berechnung von Bildern mit Bildschirmanzeige (vgl. 2.3) wird ohnedies der gesammte Bildschirm fr CHAOSultd reserviert, bei der Berechnung von Bildern ohne Bildschirmdarstellung ist man trotzdem auf ein echtes Multitasking wie von MultiTos angewiesen (wobei der Info-Dialog im Fenster ausgegeben werden muss, sonst ist ebenfalls der ganze Bildschirm gesperrt). Da ich weder MultiGem noch Magix noch MultiTos (was sollte ich mit letz- terem auch auf meinem alten ST) habe, wurde CHAOSultd in keiner Weise mit solchen (Pseudo)-Multitasking-Systemen getestet! Obige Bemerkungen sind insofern rein theoretisch. 1 ALLGEMEINE BEDIENUNGSHINWEISE 16 So jetzt aber zu den Nachteilen der Dialogfenster, die auf einem altersschwa- chen System wie ich es nutze (8Mhz 68k) doch sehr erheblich sind. Es ist prinzipbedingt nicht m”glich, den Hintergrund von Fenstern zu speichern, so dass nach dem Schliessen des Fenster-Dialoges der Hintergrund jedesmal neu gezeichnet werden muss und das braucht Zeit. Nicht ewig, aber deut- lich l„nger als das Restaurieren des Hintergrundes von normalen Dialogen, wo der Hintergrund (gengend Speicher vorausgesetzt, das habe ich schon mal erw„hnt) zwischengespeichert wird, und so von der Dialogroutine selbst restauriert werden kann, was erheblich schneller geht. 1.3 Fenster CHAOSultd verwendet als GEM-konformes Programm natrlich Fenster. Und zwar o ein Objekt-Fenster, in dem die vorhandenen (Bild-)Objekte angezeigt werden in der Info-Zeile des Objekt-Fensters wird die Zahl der vorhandenen Objekte, die Zahl der selektierten Objekte und der verbleibende freie Speicher angezeigt o Anzeigefenster fr ein oder mehrere Bild-Objekte (im folgenden Bild- Fenster genannt) im Titel des Fensters wird der Name des gerade angezeigten Bildes genannt o Anzeigefenster fr Bildvergleiche/Bl”cke/Konstante (im folgenden Anzeige-Fenster genannt) Anzeige-Fenster unterscheiden sich von Bild-Fenstern dadurch, dass sie nicht direkt ein Bild-Objekt darstellen. Bei Bl”cken/Konstanten liegt zwar ein Bild zugrunde, in diesem sind aber zus„tzliche Linien einge- zeichnet. Anders als Bild-Fenster gibt es in Anzeige-Fenstern immer nur ein Bild. o Dialogfenster, die schon erkl„rt wurden 1.4 Objekte CHAOSultd kennt drei Typen von Objekten: 1. Fraktale Unter Fraktalen verstehe ich alle Bilder, die durch irgendwelche Be- rechnugsroutinen in CHAOSultd erzeugt werden. Insofern ist die Be- zeichnung Fraktale natrlich nicht ganz richtig, da solche Bilder nicht notwendig fraktal sein mssen14. ____________________________________14 Bisweilen ist in dieser Anleitung auch von Fractalen die Rede, gemeint sind dann speziell Bilder, die mit den Routinen des Moduls 'Fractal' unter den Menpunkten Fractal(e), freie Fract. und 3d Fractal(e) erzeugt wurden. 1 ALLGEMEINE BEDIENUNGSHINWEISE 17 2. Bilder gemeint sind parameterlose Bilder, die entweder geladen oder nach Bildvergleich (vgl. 4.2) usw. erzeugt wurden Bilder ohne Parameter gibt es haupts„chlich der Vollst„ndigkeit halber, sie spielen im folgenden kaum eine Rolle 3. Filme Filme sind in CHAOSultd schlicht geordnete Bildlisten. Sie k”nnen et- wa zum Verknpfen mehrerer Bildfolgen oder zum Festlegen der Rei- henfolge, in der bestimmte Bilder gezeigt werden sollen, dienen. Bilder (Fraktale oder einfache Bilder) k”nnen jede Gr”sse und Farbtiefe mit den eingangs angegebenen Beschr„nkungen besitzen. Jedes im Speicher vorhandene Objekt wird durch ein Icon im Objekt-Fenster angezeigt. Dabei werden die verschiedenen Typen von Fraktalen durch verschiedene Icon dargestellt. Ebenso gibt es ein eigenes Icon fr reine Bild-Objekte und fr Filme. Neben dem Objekt-Typ kann man am Icon ablesen, ob das zugeh”rige Ob- jekt gespeichert ist oder nicht. Ist das Objekt gespeichert, so wird das Objekt abgehakt dargestellt (was man allerdings nur im unselektierten Zustand se- hen kann). Bei Fraktalen kann man darberhinaus sehen, ob das Bild schon vollst„ndig berechnet wurde oder ob es noch nicht fertig ist. Unfertige Bilder werden ohne Rahmen, fertige mit Rahmen angezeigt. Nebeneinander werden im Objekt-Fenster stets nur so viele Objekte an- gezeigt, wie bei der gerade gew„hlten Fenster-Breite in das Fenster hinein passen. Sind mehr Objekte vorhanden, als im Fenster dargestellt werden k”nnen, so kann man mit dem vertikalen Scroll-Balken des Fensters einstel- len, ab welchem Objekt die Objekte angezeigt werden sollen. 1.5 Selektieren von Objekten im Objekt-Fenster Maus Mit der Maus k”nnen o einzelne Objekte angeklickt werden - sie „nderen dann ihren Sta- tus. D.h. selektierte Objekte werden deselektiert, nicht selektierte aus- gew„hlt. o Gummib„nder aufgezogen werden, wie man das vom Desktop her kennt. Gummib„nder konnen (anders als auf dem Desktop) auch von rechts unten nach links oben aufgezogen werden. W„hrend des Auf- ziehens wird der Mauszeiger nicht als Pfeil sondern als zeigende Hand dargestellt. Angesprochen werden damit alle Objekte, die ganz oder teilweise innerhalb des aufgezogenen Rechteckes liegen. 1 ALLGEMEINE BEDIENUNGSHINWEISE 18 Der Zustand dieser Objekte wird je nach dem Status der Sondertasten ver„ndert: ist keine Sondertaste gedrckt, so werden die Objekte se- lektiert, ist eine Shift-Taste gedrckt deselektiert und bei gedrckter Control-Taste wird der Objekt-Status ge„ndert. o Analog zur Vorg„ngerversion von CHAOSultd kann man auch Objekt- bereiche ansprechen, indem man zun„chst einen Shift-Klick auf das erste Objekte ausfhrt. Klickt man nun ein weiteres Objekt an, so wer- den alle Objekte zwischen dem zuerst und dem dann angeklickten Ob- jekt angesprochen. Diese werden wieder je nach Sondertasten-Status beim zweiten Klick selektiert, deselektiert oder ge„ndert (letzteres ist nicht mehr analog zur Version 5.0). Zwischem dem ersten (Shift-)Klick und dem Ausw„hlen des zweiten Objektes wird der Mauszeiger innerhalb des Objektfensters als zeigen- de Hand dargestellt (wie beim Aufziehen eines Gummibandes). Damit soll gewissermassen der andere Zustand, in dem sich der Mauszeiger jetzt befindet, deutlich gemacht werden. Ein Mausklick in diesem Zu- stand hat ja eine andere Wirkung als sonst. M”chte nach der Auswahl des ersten Objektes doch auf die Selektion eines Objektbereiches verzichten, so kann man neben eines der Objekte klicken, der Sonderzustand der Maus wird dann aufgehoben. Popup-Men Viele der Funktionen von CHAOSultd k”nnen auch ber Popup-Mens auf- gerufen werden, auch zum Selektieren steht ein solches bereit. Aufgerufen wird es durch Doppelklick auf ein Objekt oder durch einfachen Mausklick neben die Objekte. Das Popup-Men stellt vier Bereiche zur Verfgung, zum Selektieren, Des- elektieren, Žndern und exklusivem Selektieren. In jedem Bereich kann man w„hlen, welche Objekte angesprochen werden sollen: Objekt (nur, wenn man auf ein Objekt geklickt hat), Zeile (nur, wenn man in eine Zeile geklickt hat), usw.. Tastatur Neben den Mauskommandos und dem Popupmen stehen noch eine Reihe von Tastaturkommandos zum Selektieren von Bilder zur Verfgung: Mit den Tasten F1 bis F10 selektiert man eine Zeile (1 bis 10) im Objektfen- ster; w„hlt man dabei eine Zeile, die kein Objekt enth„lt, so wird die letzte nichtleerer Zeile eingestellt - hat man mehr als zehn Zeilen im Objektfen- ster, dann kann man nur die ersten zehn Zeilen mittels Tastatur ansprechen (kann mir mangels Bildschirmaufl”sung nicht passieren; gemeint sind immer die angezeigten Zeilen; nicht sichtbare Objekte k”nnen via Tastatur nicht selektiert werden). Mit den Tasten 1 - 9, 0 und ss, ' sowie # kann man dann die einzelnen Objekte dieser Zeile ansprechen (wiederum maximal das 13. Objekte, aber 1 ALLGEMEINE BEDIENUNGSHINWEISE 19 wer hat schon einen so breiten Bildschirm), mit Tab die ganze Zeile. Clr wirkt auf alle Objekte (unabh„ngig der eingestellten Zeile). Die Taste Ins bezieht sich auf alle ge„nderten, aber nicht gespeicherten Objekte, Del auf alle fertigen Bilder, auf alle nicht fertigen. Die Tasten . und - wirken jedes zweite bzw. vierte Objekt. Dabei wird das Objekt bzw. werden die Objekte bei normalem Tasten- druck selektiert, mit Shift-Taste deselektiert, mit Control ge„ndert und mit Alternate als einziges Objekt selektiert. Mittels Cursor Up und Down kann man die Objekte nach oben oder unten scrollen, und zwar zeilenweise falls man die Cursor-Tasten alleine und seiten- weise, falls man gleichzeitig die Shift-Taste drckt (anstatt den Scrollbalken des Fensters zu bemhen). Die Tastaturbefehle fr das Desktop sind auch in einer Dialogbox zusam- mengefasst, die man durch Drcken der Help-Taste aufrufen kann. Allgemein ist zum Selektieren von Objekten noch zu bemerken, dass selektier- te Objekte selektiert bleiben, auch wenn sie aus dem Fenster herausgescrollt werden und deshalb nicht sichtbar sind. 1.6 Bedienungselemente zum Aufruf von Funktionen Bevor die Funktionen von CHAOSultd im einzelnen erl„utert werden, stelle ich zun„chst die M”glichkeiten diese Funktionen aufzurufen kurz dar. Men Die GEM-Menleiste ist ja wohl allgemein bekannt, die Menpunkte k”nnen auch durch die im Men angezeigten Tasten aufgerufen werden. Dennoch gibt es ein paar Besonderheiten zu beachten und zwar fr viele Funktionen die sich auf Objekte von CHAOSultd - also Bilder, Fraktale etc. - beziehen. Bei der Frage, auf welche Objekte sich die Auswahl einer solchen Funktion jeweils bezieht, muss man zun„chst unterscheiden, welches Fenster bei Auswahl des Menpunktes gerade aktiv ist. Unterschieden wird zwischen Objekt-, Bild- und Anzeige-Fenstern. Ist kein Fenster von CHAOSultd aktiv (etwa weil ein Fenster eines Accesso- ries aktiv ist) so bezieht sich die Objekt-Auswahl auf das letzte aktive Fenster von CHAOSultd. Ist kein Fenster von CHAOSultd offen, so gilt dasselbe wie bei aktivem Objekt-Fenster. o Objekt-Fenster aktiv - ist kein Objekt selektiert, so bezieht sich die Funktion auf alle Objekte (bzw. alle Fraktale, falls die Funktion fr einfache Bilder keinen Sinn macht, oder auch alle nicht fertigen Bilder oder was auch immer) - sind Objekte selektiert und zwar irgendwelche, so bezieht sich die Funktion auf die selektierten Objekte (soweit sie weitere not- wendige Kriterien erfllen, d.h. unter Umst„nden auf gar keine, 1 ALLGEMEINE BEDIENUNGSHINWEISE 20 n„mlich dann wenn nur Objekte selektiert sind, die die weiteren Kriterien nicht erfllen; in diesem Fall wird die Funktion ohne weitere Fehlermeldung abgebrochen), es seie denn, - es wurde bei der Menauswahl gleichzeitig mit dem Mausklick (links) die rechte Maustaste oder eine der Shift-Tasten gedrckt. In diesem Fall bezieht sich die Funktion wiederum auf alle Ob- jekte. o Bild-Fenster aktiv - die "normale" Menauswahl bezieht sich auf das gerade angezeig- te Bild - die Menauswahl mit gedrckter Shift- oder rechter Maustaste bezieht sich auf alle Bilder der Bildliste o Anzeige-Fenster aktiv Die Menauswahl bezieht sich auf das angezeigte Bild. Die Auswahlm”glichkeiten, also die Frage, welche Menpunkte man ausw„hlen kann, und welche gesperrt sind, h„ngen natrlich von diesen Regeln ab, wegen der M”glichkeit des Shift-Klickens kann es sein, dass Menpunkte fr normales Ausw„hlen inaktiv sind aber nicht gesperrt wer- den. Bei Funktionen die sich nur auf einzelne Bilder beziehen existiert die M”glichkeit des Shift-Klickens nicht, die Shift-Taste (rechte Maustaste) wird dann einfach ignoriert. Popup-Mens Mit Hilfe der Popup-Mens kann man ettliche Funktionen der Menleiste ebenfalls aufrufen. Im Objekt-Fenster gibt es mehrere Popup-Mens: das schon besprochene Men zum Selektieren von Objekten sowie zwei Mens zum Ausw„hlen von Funktionen. Die letzten zwei erreicht man durch Mausklick rechts, wobei unterschieden wird, ob man auf ein Objekt klickt oder nicht (deswegen zwei Popup-Mens, die unterschiedliche Funktionen enthalten). Klickt man auf ein Objekt, so beziehen sich alle folgenden Auswahlen auf ge- nau dieses eine Objekt, ansonsten gelten die gleichen Auswahlregeln wie bei der Auswahl mit dem Drop-Down-Men bei aktivem Objekt-Fenster. (statt gleichzeitig gedrckter rechter Maustaste, wird das Popup-Men allerdings mit rechter (oder linker) Maustaste verlassen). Die Auswahl mit dem Popup-Men kann auch erfolgen, wenn das Objekt- Fenster zwar offen aber nicht aktiv ist (mit einem Mausklick rechts zum Aufruf des Mens wird es auch nicht aktiviert). 1 ALLGEMEINE BEDIENUNGSHINWEISE 21 Weitere Popup-Mens stehen in Bild-Fenstern und Anzeige-Fenstern zur Verfgung. Beim Popup in Bild-Fenstern wird (wie bei der Menauswahl) je nach Zustand der Shift-Taste unterschieden, ob sich die Funktion auf alle Bilder (gedrckte Shift-Taste; natrlich nur falls berhaupt sinnvoll) oder nur auf das aktuelle Bild beziehen soll. 1.7 Online-Hilfe CHAOSultd verfgt (im Prinzip) ber ein umfangreiches kontextsensitives Hilfs-System. Im Prinzip, weil die Hilfstexte noch nicht geschrieben sind, und das Hilfs-System somit wenig hilfreich ist. Dennoch soll das Hilfs-System hier schon einmal beschrieben werden, auch wenn ich nicht weiss, ob und wann ich die Hilfstexte je schreibe (zumal die Resonanz15 auf CHAOSultd so umwerfend ist, dass das Programm vermut- lich eh keiner ausser mir benutzt, und wofr wird dann ein Hilfs-System gebraucht). Das Hilfs-System stellt wie gesagt zahlreiche Hilfstexte zur Verfgung und zwar o zum Desktop und o zu allen Mens diese Hilfstexte sind ber das Keine Panik!-Men (ja, das ist jetzt ein Men) rechts oben zu erreichen. Den Hilfstext zum Desktop erreicht man auch durch Drcken der Help-Taste (dieser Hilfstext ist einer der wenigen Texte die schon geschrieben sind). o zu jeder Dialogbox in (fast) allen Dialogboxen existiert ein Hilfe-Button, den man anklicken kann, den man aber auch durch Drcken der Help-Taste aktiviert. Im allgemeinen findet sich dieser Button links unten, bei Platzmangel habe ich das Hilfe bisweilen zu H verkrzt. Nach Aufruf des Hilfs-Systems erscheint der Hilfs-Dialog, in dem der Hilf- stext angezeigt wird. Dieser kann aus bis zu 16 Seiten bestehen, zwischen denen man mit den Button weiter und zurck bl„ttern kann. Neben diesen Button wird brigens angezeigt, welche Seite von wievielen gerade dargestellt wird. šber den Button befindet sich eine Zeile, in der bis zu drei Querverweise zum Hilfstext angezeigt werden, die man durch Anklicken aufrufen kann. Dann wird der zu diesen Querverweisen geh”rende Hilfstext geladen. Zurck zum vorherigen Hilfstext gelangt man mit dem Button voriges. Die maximale Schachtelungstiefe von Querverweisen ist 16. Ebenfalls wie ein Querverweis gehandhabt wird die Hilfe zur Hilfe, die man mit dem Hilfe-Button im Hilfs-Dialog aufrufen kann (dieser Text existiert ebenfalls bereits). ____________________________________15 CHAOSultd ist POSTCARDWARE! 2 BILDER ERZEUGEN 22 Unabh„ngig von der aktuellen Schachtelungstiefe kann der Hilfs-Dialog mit dem Button Abbruch beendet werden. 2 Bilder erzeugen 2.1 neue Bilder - Eingabe der Parameter Um neue Bilder zu erzeugen w„hlt man im Men Neu den Menpunkt, der zum gewnschten Bildtyp geh”rt. Das Anklicken des Menpunktes mit gedrckter Shift- oder Control-Taste hat eine Sonderbedeutung (vgl. 6.4), diese Sondertasten drfen also nicht gedrckt sein. Einstellen des Bildformates Zun„chst wird ein Dialog dargestellt, in dem man die Zahl der zu erzeugen- den Bilder16, den Namen der Bilder (oder des Bildes, man kann natrlich auch nur ein Bild erzeugen; bei der Erzeugung mehrerer Bilder werden die Bildnamen von CHAOSultd durchnummeriert, die letzten Zeichen im Na- men werden dabei gegebenenfalls berschrieben) angibt, sowie die Gr”sse und Farbtiefe des Bildes festlegt. Letzteres geschieht ber Popup-Mens fr die Breite, die H”he und die Zahl der Farben (bzw. Raster)17. Bei Breite und H”he enth„lt das Popupmen natrlich nur eine Auswahl m”glicher Gr”ssen, dazu gibt es die M”glichkeit, den Eintrag frei im Popup-Men einzustellen und die Breite (bzw. H”he) als Zahl einzugeben. Falls n”tig wird diese An- gabe modulo 16 bei der Breite und modulo 4 bei der H”he (ab)gerundet (d.h. so, dass das Ergebnis durch 16 bzw. 4 teilbar ist). Hinter dem Popup- Men fr die Zahl der Farben wird noch die Zahl der dafr n”tigen Bitmaps (Bildebenen) angegeben. Es ist m”glich, dass bestimmte Routinen nicht alle Bildgr”ssen und vor allem Farbanzahlen untersttzen. Insbesondere gibt es jetzt schon einige Routinen, die nur zweifarbige Darstellung zulassen. Die Auswahlm”glichkeit ist dann eingeschr„nkt. Neben der expliziten Eingabe von Breite, H”he und Farbzahl kann man auch ein Format als Ganzes ausw„hlen, ebenfalls via Popupmen. Die Einstellun- gen fr Breite, H”he und Farbzahl werden entsprechend den Parametern des gew„hlten Formates gesetzt. Der erste Eintrag dieses Popup-Mens steht fr das gerade verwendete Bildschirmformat, es folgen eine Reihe von m”glichen anderen Formaten (einfach ausprobieren) ein nicht anw„hlbarer Eintrag un- bekannt, der angezeigt wird, falls man mit der Einstellung fr Breite, H”he und/oder Farbtiefe ein Format gew„hlt hat, fr das kein Eintrag im Po- pupmen existiert, und ein Eintrag bernehmen. Mit diesem letzten Eintrag ____________________________________16 CHAOSultd erlaubt es Bilderfolgen zu erzeugen, bei denen nur die Pa- rameter des ersten und letzten dieser Bilder eingegeben werden. Unter Zahl der Bilder ist die Zahl der zwischen diesen Bildern durch Interpolation zu erzeugenden Bilder gemeint 17 CHAOSultd kann in monochromen Bitmaps durch Rasterung 5 (2x2 Raster) bzw. 17 (4x4 Raster) Graustufen erzeugen 2 BILDER ERZEUGEN 23 kann man die Parameter von einem geladenen Objekt bernehmen (vgl. 2.2). (Sind nicht alle Bildgr”ssen und/oder Farbanzahlen m”glich, so werden die Parameter automatisch angepasst.) Unter dem Format-Popup wird angezeigt, wieviel Speicher noch frei ist, wie- viel Speicher ein Bild des gew„hlten Formates ben”tigt und wieviel Speicher alle Bilder zu berechnenden Bilder brauchen wrden; dabei wird der Spei- cherplatzbedarf ungepackter Bilder zugrundegelegt, d.h. die Bilder belegen, falls sie gepackt werden, letztenendes weniger Speicherplatz. Die Anzeige wird nach der Anwahl eines der Popup-Mens aktualisiert, man kann die- ses Aktualisieren auch durch Anklicken der Anzeige erreichen. Falls Breite oder H”he auf frei eingestellt ist, wird der gerade eingegebene Wert fr die- se Anzeige nur ausgelesen, wenn man nochmals auf frei in diesem Popup- Men klickt oder die Anzeige durch Anklicken aktualisiert. Zum Verlassen der Dialogbox gibt es die blichen Button Ok und Abbruch, links neben diesen gibt es noch einen Button Farben, der in den Farbselector verzweigt (s.u.). Anpassen der voreingestellten Formate Dieser Abschnitt richtet sich nur an Insider, wer sich nicht mit Resource- Files auskennt oder kein Resource-Construction-Set besitzt kann die folgen- den Zeilen getrost berlesen. Mit Hilfe eines RCS ist es m”glich, die voreingestellten Formate (und ihre Namen) zu „ndern. Zu diesem Zweck lade man die Resource-Datei CHA- OS.RSC in das RCS. Selbstverst„ndlich muss man vorher eine Sicherheitsko- pie des Resource-Datei anlegen. Man beachte auch, dass die Resource-Datei gr”sser als 32kByte ist, nicht alle Resource-Construction-Sets k”nnen damit umgehen. Die Struktur der Resource-Datei darf auf keinen Fall ver„ndert werden, dies kann man in Interface etwa dadurch erreichen, dass man Ob- jektnummern fest einstellt). Der zweite Objektbaum enth„lt alle Popup-Mens von CHAOSultd gem. Links unten befindet sich das Popup-Men fr den Format-Popup, rechts daneben sind innerhalb einer eigenen Box in Strings die zugeh”rigen Para- meter (Breite H”he Farbanzahl) angegeben. Durch Žndern der Texte (und nur dieser, wer die Anzahl der Objekte und damit die Struktur „ndert, wird mit der ge„nderten Resource-Datei nicht mehr glcklich werden) kann man andere Formate fr den Format-Popup realisieren. Andere Žnderungen an der Resource-Datei sind untersagt! Farbselector Der Farbselector dient dem Einstellen der Farben, und das ist leichter gesagt als getan. Das Problem des Farbselectors ist, dass er auch bei monochromer Bildschirmdarstellung die Einstellung von bis zu 256 Farben zulassen muss, und das ist nicht so einfach zu realisieren, wenn man gleichzeitig hohen Komfort bei der Eingabe der Farben erreichen will. 2 BILDER ERZEUGEN 24 Die Bequemlichkeit des jetzt existierenden Farbselectors ist denn auch bei vielen Farben nicht so ganz berzeugend, wenngleich Interpolationsfunktio- nen auch die rasche Einstellung vieler Farben erlauben. Der Farbselector zeigt prinzipiell nur die Einstellung einer Farbe an. Diese kann man links unten mit den Button << und >> ausw„hlen, wobei Dop- pelklick zur ersten bzw. letzten Farbe schaltet. Stehen auf dem Bildschirm vier oder mehr Farben zur Verfgung so wird die gerade eingestellte Farbe in dem Balken unter der Farbnummer angezeigt (wobei alle Ver„nderungen sofort angezeigt werden). Die Farbeingabe wirkt ansonsten nicht direkt auf die eingestellte Farbtabelle. Den gr”ssten Teil des Farbselectors nehmen die beiden K„sten mit den Ein- stellbalken fr die Farbe ein. Links hat man die M”glichkeit, die RGB- (Rot-, Grn- und Blau-) Werte der Farbe einzustellen, und zwar auf einer Skala von 0 bis 1000 (entsprechend den GEM-Konventionen) - rechts kann man alter- nativ die Farbe im HLS-Modell (hue, lightness, saturation; d.h Farbwert, Helligkeit und S„ttigung) einstellen, wobei die Einstellung im einen Modell jeweils automatisch in die Anzeige des anderen bernommen wird. Mit der Auswahl der einzustellenden Farbnummer und der Einstellung der gewnschten Farbe im RGB- oder HLS-Modell kann man nun die Farbpalette zusammenstellen, was bei vielen Farben aber recht langwierig ist, weshalb es noch einige Hilfsfunktionen gibt. Dazu dienen die Button links von der Farbnummernanzeige. Mit Interp. kann man die zwischen zwei Farbnummern liegenden Farben durch Interpolation deren Werte berechnen. Klickt man den Button zum er- sten Mal an, so wird die aktuell eingestellte Farbnummer als Startnummer gespeichert, der Button wird zur Erinnerung abgehakt dargestellt. Klickt man den Button jetzt noch einmal bei einer anderen Farbnummer an (es muss mindestens eine Farbnummer zwischen der Startnummer und dieser anderen Farbnummer liegen, sonst w„re das Ganze wenig sinnvoll), so er- scheint ein Popup-Men, in dem man ausw„hlen kann, ob man im RGB- oder HLS-Modell interpolieren will (interpoliert wird stets linear zwischen den Anfangs- und End-Werten). Klickt man neben das Popup-Men, so wird die Funktion abgebrochen, ansonsten werden die Farben interpoliert (kann bei vielen Farben vor allem im HLS-Modell etwas dauern). šbernehmen steht fr die šbernahme der aktuell auf dem Bildschirm ein- gestellten Farben. Damit kann man - wenn man Fensterdialoge verwendet, und die einzustellende Farbtabelle nicht mehr Farben als die Bilderschirm- darstellung enth„lt - die Farben mit einem externen Accessory einstellen, und dann in CHAOSultd bernehmen. Holen bedeutet, dass man die Farben aus einem bereits bestehenden Bild- Objekt in CHAOSultd auslesen lassen kann. W„hlt man den Menpunkt an, so kann man auf dem Objektfenster durch Doppelklick ein Objekt ausw„hlen, dessen Farben dann bernommen werden (siehe auch 2.2). Standart setzt die Farben auf eine (eher m„ssige) Standarteinstellung, die auch vor Aufruf des Farbselectors eingestellt wird (s.u.). U neben den Button zum Verlassen (Abbruch und Ok) ist der Undo-Button, 2 BILDER ERZEUGEN 25 mit dem man den Zustand wiederherstellen kann, in dem man den Farbse- lector aufgerufen hat. Noch ein Wort zur Voreinstellung der Farben. Der Aufruf des Farbselectors von der Dialogbox zum Einstellen des Bildformates ist nicht obligatorisch. Dennoch mssen die Farben natrlich irgendwie gesetzt werden. Ebenso soll- te man beim Aufruf des Farbselectors irgendeine wenigstens einigermassen passende Voreinstellung vorfinden (zumindest mssen die Werte zwischen 0 und 1000 liegen, sonst spielt der Farbselector n„mlich verrckt). Um dies zu erreichen, erzeugt CHAOSultd fr die Farbtabelle eine Vorein- stellung (Standarteinstellung)18. Und zwar entweder unmittelbar vor dem Aufruf des Farbselectors oder bei Verlassen der Dialogbox zum Einstellen des Bildformates, wenn der Farbselector nicht aufgerufen wurde und noch keine Farbtabelle erzeugt wurde. Das Problem dabei ist die unbekannte Zahl von Farben, die sich mit der Einstellung des Bildformates „ndern kann. Wird die Zahl der Farben nach Aufruf des Farbselectors erh”ht, so geht CHAOS- ultd davon aus, dass keine Farbtabelle existiert. Wird die Zahl der Farben verringert, so wird die Farbtabelle abgeschnitten, was aber nicht unbedingt zu einem brauchbaren Resultat fhren muss - in diesem Fall ist der Anwender gefragt. Man sollte deshalb immer zuerst die Zahl der Farben einstellen (und dann konstant lassen; Vorsicht beim W„hlen eines Formates) und sich dann um die Einstellung der Farbtabelle kmmern; dann sollten keine Probleme auftreten. Fraktal-Parameter Nach der Eingabe des Bildformates und eventuell der Farbtabelle mssen noch die Fraktal-Parameter, die von den Berechnungsroutinen abh„ngen und das zu erzeugende Bild im einzelnen festlegen, eingegeben werden. Die De- tails dieser Eingabe h„ngen von den Berechungsroutinen ab. 2.2 šbernahme von Daten aus bestehenden Objekten Bei der Einstellung des Bildformates und der Farbtabelle, aber auch bei der Eingabe von Fraktal-Parametern, ist es m”glich, die Daten aus einem schon bestehenden Objekt zu bernehmen, bei Fraktal-Parametern kann man auch Bl”cke oder einzelne Punktkoordinaten in Bildern mit der Maus markieren (soweit die Berechnungsroutinen dies unterstzen). Ruft man in der entsprechenden Dialogbox diese Funktion(en) auf, so wird zun„chst die Dialogbox geschlossen und der Desktop angezeigt, man befindet sich in einer Art Auswahl-Zustand von CHAOSultd. Viele der Funktionen von CHAOSultd lassen sich auch in diesem Zustand aufrufen, nicht aller- dings das Verlassen des Programmes und alle Funktionen zum Erzeugen von ____________________________________ 18die Voreinstellung ist derzeit bei zwei Farben scharz und weiss (genauge- nommen umgekehrt); bei 4 bis 16 Farben werden die Farben einer 16 farbigen Farbtabelle entnommen und bei mehr als 16 Farben zwischen den Farben dieser 16 farbigen Tabelle interpoliert 2 BILDER ERZEUGEN 26 Bildern. Es ist prinzipiell unm”glich, diesen Zustand aus diesem Zustand heraus nochmal aufzurufen (wenn man etwa die Bildparameter und dann den Farbselektor aufruft, kann man die Funktion holen nicht aufrufen). Wie kann man nun aber Objekte oder Bl”cke bzw. Koordinaten ausw„hlen? Was man ausw„hlen kann, h„ngt von der aufrufenden Funktion ab, ebenso wie die Frage, welche Daten dann bernommen werden. Objekte werden ausgew„hlt, indem man auf ein Objekt im Objekt-Fenster doppelklickt. Dabei ist es m”glich, dass sich die Objekt-Auswahl auf Objekte eines speziellen Objekttypes beschr„nkt, die Auswahl eines Objektes mit einem anderen Objekttyp bewirkt dann den Abbruch der Auswahl. (Bisher) nur beim Edieren von Filmen (vgl. 3.3) ist auch die Angabe eines Be- reiches von Objekten m”glich, analog zum Selektieren eines Objektbereiches. So wie dort, klickt man zun„chst ein Objekt mit gedrckter Shift-Taste an - dieses Objekt ist dann der Anfang des Bereiches; ebenso wie beim Selektie- ren wird der Mauszeiger als zeigende Hand dargestellt (CHAOSultd weiss ja auch noch gar nicht, ob man einen Bereich selektieren oder ausw„hlen will). Doppelklickt man jetzt auf ein Objekt, so wird dieses als Ende des Bereiches erfasst und der Bereich ist ausgew„hlt. Dabei wird die Reihenfolge der bei- den Objekte beachtet, d.h. der Bereich beginnt bei dem zuerst angeklickten Objekt und endet beim zweiten, auch wenn das zweite in der Objektliste weiter vorne steht. Bl”cke werden ausgew„hlt, indem man in ein Bild-Fenster klickt und dann einen Rahmen aufzieht, der dem gewnschten Block entspricht. Das geht nicht bei allen Bildern, da nicht immer eine Zuordung der Bildpunkte zu Koordinaten m”glich ist (beispielsweise nicht bei 3d Fractalen; ebensowe- nig bei geladenen parameterlosen Bildern). Bl”cke k”nnen allerdings nicht nur in Bild-Fenstern, sondern auch in Anzeige-Fenstern bei Block- oder Konstanten-Anzeigen ausgeschnitten werden, sie beziehen sich dann auf das zugrundeliegende Bild (vgl. 4.3 und 4.4. Prinzipiell nicht m”glich ist das Ausschneiden von Bl”cken aus Bildvergleichen. Koordinaten eines Bildpunktes w„hlt man durch Doppelklick in ein Bild aus, wobei die gleichen Einschr„nkungen wie bei Bl”cken gelten. Abbrechen kann man die Auswahl von Daten durch einen Doppelklick ins Objektfenster, neben ein Objekt. W„hrend dieses Auswahlzustandes kann man mit der Help-Taste einen Hilfs- dialog anzeigen, der diese Optionen kurz wiederholt, wobei nicht m”gliche Optionen grau dargestellt werden. Ausserdem wird angezeigt, wofr man die Daten ausw„hlt, und ob ein beliebiges Objekt oder nur ein Objekt eines speziellen Objekttypes (der dann genannt wird) ausgew„hlt werden soll. 2.3 Berechnung von Bildern Berechnungsmodi Es gibt zwei grunds„tzlich verschiedene Berechnungsmodi in CHAOSultd gem. Im einen wird auf dem (gesamten) Bildschirm das Ergebnis der lau- fenden Berechnung angezeigt (soweit es draufpasst). Im anderen wird die 2 BILDER ERZEUGEN 27 Berechnung ohne gleichzeitige Anzeige auf dem Bildschirm durchgefhrt. Dann weist lediglich ein Info-Dialog rechts oben auf dem Bildschirm (gege- benenfalls im Fenster) auf die Berechnung hin. Dadurch spart man sich die Punktzeichnerei auf dem Bildschirm, die wegen der GEM-konformen Aus- gabe halt auch ihre Zeit braucht. Wichtig fr Multitasking-User: wird der Info-Dialog nicht in ein Fenster gelegt, so wird durch ihn der ganze Bild- schirm fr GEM-Ausgaben gesperrt! Beim Mitzeichnen auf den Bildschirm wird das Bild in die Bildmitte zen- triert, solange es kleiner als der Bildschirm ist; ist es gr”sser, so wird die linke obere Ecke angezeigt. Bei diesem Mitzeichnen kann (bisher nur bei monochromen Bildern oder Bildschirmen) das Ausgeben der Punkte gepuffert werden, was man aber auch abstellen kann (dann geht es noch langsamer). An dieser Stelle findet sich ein Fehler, nicht in CHAOSultd aber in NVDI. Macht man das Ganze in mittlerer Aufl”sung (aber mit zweifarbigem Fraktal), dann wird von den gepufferten Punkten immer nur einer gezeichnet (betrifft nur die Bildschirm- darstellung; intern wird das Bild korrekt erzeugt). Dieser Fehler liegt nicht bei CHAOSultd (er verschwindet, wenn man NVDI rausschmeisst), am ein- fachsten umgeht man ihn, indem man die Pufferung der Ausgabe abschaltet. Berechnungsunterbrechung Die aktuelle Berechnung eines Bildes kann (soweit von den Berechnungsrou- tinen untersttzt) auf zweierlei Weise unterbrochen werden. Durch Drcken der Space-Taste kann man einen Info-Dialog aufrufen, in dem angezeigt wird, welches Bild gerade berechnet wird, wie weit dieses Bild schon berechnet wurde etc.. Durch Drcken der Esc-Taste kann man die Berechnung des aktuellen Bildes abbrechen. Drckt man gleichzeitig die Shift-Taste, so werden eventuell noch folgende Bilder nur noch erzeugt, ihre Berechnung aber nicht mehr begonnen. Drckt man gleichzeitig die Alternate-Taste, so werden weitere Bilder auch nicht mehr erzeugt (wobei vorher eventuell noch nachgefragt wird, ob man dies wirklich will). Im Zusammenhang mit dem Berechnungsinfo ist noch eine kleine Unzul„ng- lichkeit von CHAOSultd zu konstatieren: wird das Berechnungsinfo beim Be- rechnen mit Anzeige aufgerufen und ist CHAOSultd (besser MyDial) nicht in der Lage, den Hintergrund zu puffern, so wird dieser nicht restauriert, sondern der Bildschirm schlicht gel”scht (Auf das zu berechnende Bild hat das natrlich keinen Einfluss), anschliessend werden nur die neu berechneten Punkte ausgegeben. Weiterberechnen von Bildern Durch Anklicken von weiter im Extra-Men kann man unfertige Bilder wei- terberechnen lassen. Die Berechnung kann genauso wie beim Berechnen neuer Bilder abgebrochen werden. 2 BILDER ERZEUGEN 28 Ist ein Algorithmus nicht in der Lage ein Bild nach Berechnungsabbruch wei- terzuberechnen, so kann er bei Berechnungsabbruch das Bild fr fertig er- kl„ren; einige Routinen erlauben dies auch durch den Benutzer zu erzwingen (z.B. Hpfer). weiter l„sst sich in diesem Fall natrlich nicht mehr verwenden. Bei bergrossen, zeilenweise berechneten Bildern wird beim Aufruf von weiter der beim Berechnen angezeigte Bildausschnitt angepasst. Dieser wird solange nach unten verschoben, bis das restliche Bild (in der H”he) ganz auf den Bildschirm passt. Bis dahin erfolgt die Anzeige der Berechnung so, dass die erste neu berechnete Zeile jeweils die oberste ist. 2.4 Neu berechnen Dieser Menpunkt dient dazu, Bilder mit teilweise ge„nderten Parametern neu zu berechnen - etwa wenn man Bilder testweise in einem kleinen Bild- schirmformat berechnet hat, und jetzt grosse Bilder haben will, aber auch wenn man einen der Parameter aller Bilder (z.B. die Berechnungstiefe von Apfelm„nnchen) „ndern will. Zun„chst kann man eventuelle Žnderungen des Bildschirmformates einge- ben. Dazu dient die gleiche Dialogbox, in der man auch das Bildschirmfor- mat neuer Bilder einstellt, allerdings mit einigen Žnderungen. Zum einen kann man bei den Parametern des Bildschirmformates angeben, welche der Parameter ver„ndert werden sollen. Dazu dienen die Button links von den Parametern. Ein Parameter wird ge„ndert, wenn der Button selektiert ist. Zum anderen kann man die Box statt mit Ok mit zwei anderen Button ver- lassen, n„mlich Neu und šberschr., wobei der erste Button bedeutet, dass ver„nderte Bilder neu erzeugt werden19, der zweite Button bedeutet, dass ver„nderte Bilder die alten Bilder berschreiben. Werden die Bilder neu erzeugt, so wird ihr Bildname aus dem alten Bildna- men wie folgt erzeugt: ist der Name weniger als 7 (6 oder weniger) Zeichen lang, so wird _N an den alten Namen angeh„ngt ist der Name genau 7 Zeichen lang, so wird N angeh„ngt. ist der Name 8 Zeichen lang, so l„sst sich nichts mehr anh„ngen; in diesem Fall wird das letzte Zeichen ermittelt, das noch keine Ziffer ist; endet der Name nicht auf eine Ziffer, so wird eben der letzte Buchstabe verwendet; enth„lt der Name nur Ziffern, so wird die erste dieser Ziffern herangezogen. Dieses letzte Zeichen wird nun eins weitergez„hlt (aus A wird B etc.). Z wird zu _, _ und 9 wird zu A. Nach der Eingabe der zu „ndernden Format-Parameter wird fr alle Bildty- pen der betroffenen Bilder, die die Funktion untersttzen20, eine Dialogbox angezeigt, in der die zu „ndernden Parameter und ihre neuen Werte eingeben werden k”nnen. Verl„sst man eine solche Dialogbox mit Abbruch, so werden ____________________________________ 19natrlich nur, wenn sie wirklich ver„ndert wurden 20m”glicherweise auch - wie bei Fractalen, s.u. - fr mehrere Bildtypen gemeinsam 2 BILDER ERZEUGEN 29 die Bilder dieses Types nicht neu berechnet, die Funktion wird aber nicht insgesamt abgebrochen. Nach Eingabe der zu „ndernden Parameter werden die Bilder mit den ge„nderten Parametern (soweit n”tig) neu berechnet. 2.5 extended Neu, Block, ... (eine bl”de šberschrift, aber was bl”deres ist mir nicht eingefallen) Neben der M”glichkeit Bilder mit ge„nderten Parametern neu berechnen zulassen, indem man die Funktion Neu berechnen aufruft, gibt es fr einzelne Bilder noch eine Alternative. Man ruft dazu Neu berechnen auf, wobei nur ein Fraktal angesprochen sein darf, und drckt dabei die Control-Taste. Man landet dann nicht in dem Mens fr neu berechnen, sondern in denen fr das Erzeugen neuer Bilder des entsprechenden Bildtypes, wobei aber die Daten des Fraktals voreinge- stellt werden. Man kann so alle Parameter - und nicht nur die im Neu-Dialog vorgesehenen - „ndern und anschliessend das Bild erzeugen. Dabei wird das Bild stets neu erzeugt (und zwar mit dem in den allgemeinen Parametern angegebenen Namen; voreingestellt ist dafr der Name des Bildes, das selek- tiert war), berschreiben ist nicht m”glich. Der Effekt ist damit der gleiche, als h„tte man das Berechnen von Bildern dieses Types aufgerufen, und dann in den allgemeinen Parametern wie in den speziellen Fraktalparametern mit der Funktion Daten holen die Daten des Bildes bernommen. Allerdings ist der Aufruf ber Neu berechnen doch um einiges einfacher. In analoger Weise kann man auch Bl”cke ausschneiden oder Konstanten fr Bilder vorgeben. Dazu markiert man einfach in einem Bild- oder Anzeige-Fenster bei gedrck- ter Control-Taste einen Block (Rahmen aufziehen) oder eine Konstante (Doppelklick) analog zum Holen von Daten. Anschliessend geht es weiter wie bei 'extended Neu'. Noch eine Anmerkung: einige der Berechnungsroutinen unterscheiden beim Holen von Daten zwischen der šbernahme aller Daten und der nur eines Teiles (z.B. Fractale). Diese Unterscheidung gibt es auch hier, wobei zum Unterschieden (wie beim Holen der Daten) die Shift-Taste dient. Ihr Sta- tus wird entweder unmittelbar vor oder alertnativ nach der Eingabe der allgemeinen Parameter herangezogen. Die M”glichkeit, die Shift-Taste vor der Eingabe der allgemeinen Parameter zu drcken entf„llt bei extended Neu im allgemeinen, da dann ja Neu fr alle Objekte und nicht nur fr das eine selektierte Objekt aufgerufen wrde (eine bedauerliche Doppeldeutigkeit der Bedienung). Weitere Anmerkung: die M”glichkeiten des extended Neu werden von allen Routinen, die auch das šbernehmen von Daten erm”glichen, untersttzt, derzeit also von allen (auch wenn die Routine neu berechnen selbst gar nicht untersttzt). 3 BILDER VERWALTEN 30 3 Bilder verwalten Die weiteren Eintr„ge im Extra-Men dienen im weitesten Sinne der Verwal- tung der Bilder (zum Menpunkt neues Objekt siehe 4.6). 3.1 Bilder konvertieren Die Funktion konvertieren erlaubt es, Bilder zu skalieren (vergr”ssern oder verkleinern) und mehrfarbige Bilder in zweifarbige (monochrome) Bilder um- zurechnen, die Farben werden dann durch Grauraster dargestellt. Die Funktion wirkt auf beliebige Bildobjekte, das Ergebnis wird in neuen Bild-Objekten abgelegt, deren Namen „nlich wie bei neu berechnen erzeugt wird, nur dass statt des 'N' ein 'K' zum Markieren verwendet wird. Beim Skalieren hat man die M”glichkeit, die Bilder um einen Faktor 2 zu vergr”ssern (Seitenl„nge!) oder um Faktoren 1/2, 1/4 oder 1/8 zu verkleinern. Ausserdem kann man noch angeben, ob das eventuell existierende Raster eines Bildes beim Skalieren beachtet werden soll (sonst wird auf Pixelebene skaliert). Beim Konvertieren gibt es mehr M”glichkeiten: Unterschieden werden muss zun„chst zwischen grunds„tzlich unterschiedlichen Algorithmen, der Fehler- Diffusion (Floyd-Steinberg), die in CHAOSultd auch mit Graurastern arbei- tet, und dem (geordneten) Dithern. Am besten probiert man die verschiede- nen Algorithmen einfach aus, und schaut sich die Ergebnisse an, jedenfalls werde ich mich jetzt nicht zu weitschweifigen Erl„uterungen aufschwingen. Bei der Fehlerdiffusion kann man w„hlen, ob der Fehler auf 4, 6, 12 oder 0 Punkte verteilt werden soll (im letzten Fall findet keine Fehlerdiffusion mehr statt, so dass man direkt in Grauraster bersetzen lassen kann), und ob Grauraster verwendet werden sollen (dann wird das Bild dadurch nochmals vergr”ssert!). M”glich sind 1x1 Raster (also Pixel, zwei Farben), 2x2 Raster (5 Farben), 3x3 Raster (10 Farben) und 4x4 Raster (17 Farben). (3x3 Raster sind deutlich langsamer als die anderen Raster! (8 ist einfach nicht durch 3 teilbar)) Weiter kann man angeben, ob die Farben absolut oder relativ umgesetzt werden sollen, im ersten Fall ist schwarz schwarz, grau grau und weiss weiss, im letzten Fall wird die dunkelste Farbe des Quellbildes zu schwarz (auch wenn sie grau ist), die hellste zu weiss. Dadurch werden zwar die Farben verf„lscht, dafr ist der Kontrast im Ergebnis besser. Der Dithering-Algorithmus (orderd dither) stellt (bisher) keine weiteren Op- tionen zur Verfgung. Die Umsetzung der Farbe muss noch fr beide Algorithmen angegeben wer- den. Im RGB-Modus gehen der Rot-, Grn- und Blau-Anteil gewichtet ein, im HLS-Modus wird die Lightness L verwendet (Achtung, L kann leicht fr verschiedene Farben gleich sein). W„hlt man Ignorieren der Farbpalette, so wird den Farben einfach ein Graukeil zugeordent, von Schwarz fr Farbe 0 bis Weiss fr die letzte Farbe. šber den beiden Methoden zum Konvertieren gibt es noch eine M”glichkeit Bitmaps auszuw„hlen, die noch nicht realisiert ist (sie ist fr die Konvertie- 3 BILDER VERWALTEN 31 rung von angezeigten Bildern gedacht). W„hlt man sie an, so wird NICHT konvertiert, d.h. man kann Bilder nur skalieren. Beim Konvertieren der Bilder werden diese zuerst skaliert, dann konver- tiert, wobei Konvertieren bei Bildern, die schon monochrom sind, ausgelas- sen wird. ACHTUNG! Insbesondere das Konvertieren kann recht lange dauern (Mi- nuten). Die M”glichkeit des Abbrechens mit 'ESC' ist nur nach dem Ende des Konvertieren eines Bildes m”glich, falls man mehrere Bilder konvertieren l„sst (analog etwa zum Packen oder Laden). 3.2 Bilder packen CHAOSultd ist in der Lage, Bilddaten im Speicher zu komprimieren (packen), so dass sie weniger Speicherplatz belegen. Andererseits mssen ge- packte Bilder vor dem Anzeigen entpackt werden, was natrlich Zeit braucht. Deshalb kann man einerseits in den Einstellungen w„hlen, ob Bilder gepackt werden sollen oder nicht und andererseits gepackte Bilder auspacken oder nicht gepackte Bilder packen lassen. Zum letzteren dient der Menpunkt Bilder packen, man kann hier Bilder packen aber auch entpacken. Nach Anwahl des Menpunktes Bilder packen erscheint eine Dialogbox, in der angezeigt wird, wieviel Speicher die entpackten Bilder, die gepackten Bilder und die gepackten Bilder entpackt belegen. Ausserdem wird die Gr”sse des freien Speichers angezeigt. Verlassen kann man die Box ausser mit Abbruch mit Packen oder Entpacken, so dass man nicht gepackte Bilder packen oder gepackte Bilder entpacken kann. W„hrend des Packens/Entpackens eines Bildes wird ein Info-Dialog angezeigt, zwischen zwei Objekten ist der Abbruch der Funktion mittels der Esc-Taste m”glich. 3.3 Film edieren Dieser Menpunkt dient dem Erzeugen neuer Filme und dem Žndern beste- hender Filme gleichermassen. Wie schon gesagt, sind Filme in CHAOSultd einfach geordnete Listen von Bildern. Ein neuer Film wird erzeugt, indem man den Menpunkt ohne selektierten Film aufruft. In einer Dialogbox kann (muss!) man dann den Filmnamen eingeben. Ist bei Aufruf der Funktion genau ein Film selektiert, so kann man diesen Film edieren. In beiden F„llen gelangt man in den Filmeditor, eine Dialogbox zum Edieren von Filmen. Den gr”ssten Teil des Filmeditors bildet die Anzeige eines Bildausschnittes des aktuellen Bildes. Diese Anzeige l„sst sich abschalten (dann wird einfach eine weisse Fl„che angezeigt), sie ist nur dann aktiv, wenn der Button 'Bild' rechts unten selektiert ist. Bei grossen Bildern wird natrlich nicht das ganze Bild angezeigt, sondern nur die rechte obere Ecke. 3 BILDER VERWALTEN 32 Unter der Bild-Anzeige befindet sich eine Info-Zeile und zwei Zeilen mit Funktions-Button, „hlich wie in CHAOSultd V5.0x. In der Infozeile stehen (von links nach rechts) der Filmname, die Anzahl der Bilder im Film, die Nummer und der Name des Bildes, das gerade angezeigt wird (gemeint ist die Nummer im Film, nicht die auf dem Desktop). In der oberen Kommandozeile gibt es die folgenden Kommandos: Die Button < - und - > dienen zum Bl„ttern im Film. Ein Einfachklick schaltet ein Bild weiter (- >) oder zurck (< -), Doppelklick schaltet an den Filmanfang oder an das Ende. Gewissermassen vor dem Filmanfang mit Bild 1 wird noch ein (stets leeres) Bild Null verwaltet, beim Einfgen von Bildern werden diese n„mlich nach dem aktuellen Bild eingefgt, um also ein neues Bild 1 einzufgen muss man auf Bild Null schalten. Womit wir beim n„chsten Punkt w„ren, dem Einfgen von Bildern. Dazu dient der Button Einfgen. Klickt man ihn an, so wird der Desktop angezeigt, und man kann das oder die Bilder angeben, die eingefgt werden sollen. Ein- zelne Bilder doppelklickt man einfach an, darberhinaus kann man aber auch durch Shift-Klick (wie beim Selektieren mehrerer Bilder (vgl. 2.2) mehrere aufeinanderfolgende Bilder in den Film bernehmen, wobei die Reihenfolge der beiden Mausklicks bercksichtigt wird. Doppelklick neben ein Bild bricht die Funktion ab, ohne ein Bild in den Film aufzunehmen. Die gegenteilige Wirkung, n„mlich das L”schen von Bildern bernimmt der Button L”schen. Mit ihm wird das aktuelle Bild aus dem Film gel”scht. Mit dem n„chsten Button Optionen kann man die Anzeigeoptionen des Films einstellen. Sie entsprechen den Optionen beim Anzeigen von Bildern, jeder Film verwaltet allerdings eigene Optionen (die beim Erzeugen des Filmes mit den gerade eingestellten Anzeigeoptionen fr Bilder vorbelegt werden). Dies ist die einzige M”glichkeit, die Anzeigeoptionen im Film zu „ndern. Žnderung der Anzeigeoptionen beim Zeigen von Filmen (s.u.) fhren nur zur Žnderung fr dieses Anzeigen. In der unteren Kommandozeile befinden sich die Button fr die Blockfunk- tionen. Mit Einfachklick auf Start und Ende kann man Blockanfang und -ende festlegen, wobei Start natrlich vor Ende liegen muss. Sind die Blockmarken gesetzt und die jeweiligen Bilder als aktuelles Bild eingestellt, so erscheinen diese Button invers; mit Doppelklick auf Start oder Ende kann man zu der entsprechenden Marke springen. Es folgen die Blockkommandos Copy, Move und Delete, die sich wohl selbst erkl„ren. Das Kommando Reverse dreht die Reihenfolge der Bilder eines Blockes um. Die maximale Zahl von Bildern, die ein Film enthalten kann, ist auf 32000 begrenzt. Die maximale Zahl von Bildern, die der Filmeditor verwalten kann, gibt man in den Einstellungen an (256-32000). Verlassen wird der Filmeditor wie blich mit Ok oder Abbruch. 4 ANZEIGEFUNKTIONEN 33 3.4 L”schen M”chte man Objekte l”schen, so selektiert man diese und klickt anschliessend den Menpunkt Objekte l”schen im Datei-Men an. (Man kann sich das se- lektieren auch sparen, dann werden aber alle Objekte gel”scht). Nach einer eventuellen Warnung (vgl. Einstellungen, 6.3) werden die Objekte gel”scht. Es ist nicht m”glich, Bilder, die sich in einer Bildliste fr ein Bild-Fenster befinden, die in Filmen enthalten sind, oder die gerade im Filmeditor aufgeli- stet werden, zu l”schen; versucht man dieses, so wird man in einer Dialogbox darauf hingewiesen. Bezieht sich L”schen nur auf selektierte Bilder, so kann man fortfahren, indem man weiter w„hlt. Dann werden die Bilder der Bild- liste, der Filme oder des Filmeditors vom L”schen ausgenommen. 4 Anzeigefunktionen 4.1 Bilder anzeigen Wenn man Bilder einmal erzeugt hat, dann will man sie natrlich auch an- schauen. Dazu gibt es in CHAOSultd zwei prinzipielle M”glichkeiten: das Anzeigen in einem (Bild-)Fenster und das Anzeigen auf dem ganzen Bild- schirm. Letzteres entspricht (in etwa, d.h. modulo interner Details, die sich aber auf Geschwindigkeit etc. auswirken) der Anzeige in der Version 5.0, insbesondere mit der M”glichkeit Bilder automatisch weiterschalten zu las- sen. Allerdings sind die diversen Optionen beim Anzeigen, fast ausschliesslich von der Anzeige im Fenster bzw. vom Desktop aus erreichbar (wie das An- zeigen der Parameter, Konstante anzeigen, Koordinaten zeigen ...). In der Ganzseiten-Anzeige kann man nur noch die Anzeigeoptionen einstellen. Bilder, die die gr”sser als der Bildschirm sind, k”nnen natrlich nicht ganz angezeigt werden. Bei ihnen kann mit den Cursor-Tasten (bzw. den Scroll- balken der Fenster) gescrollt werden. Was unter Umst„nden auch nicht vollst„ndig angezeigt werden kann sind die Farben: bei Bildern mit mehr Farben (bzw. Farbebenen) als auf dem Bildschirm dargestellt werden k”nnen stellt CHAOSultd nur die ersten Far- bebenen dar21, der Rest der Information geht verloren. CHAOSultd verfgt im Moment ber keinerlei M”glichkeit Bilder beim Anzeigen durch Raste- rung oder andere Algorithmen zu konvertieren. M”glich ist es allerdings Bild- Objekte in monochrome Bilder zu konvertieren. Bei der Anzeige im Fenster fhrt die Anzeige der Farben des Bildes natrlich zur Žnderung der Farben auf dem ganzen Desktop. Da dies bei Aufruf von Dialogboxen unter Umst„nden sehr unpraktisch ist, kann man in den Ein- stellungen drei Modi fr das Einstellen der Farben von Bild- und Anzeige- Fenstern w„hlen: im einfachsten Fall bleiben die Farben in jedem Fall ent- ____________________________________ 21dies fhrt dazu, dass die Farben modulo (d.h. Teilungsrest) der Farbzahl auf dem Bildschirm gerechnet werden. Auf diese Weise werden Farbabfolgen (wie Farbe 1, Farbe 2, Farbe 3 etc.) wieder zu Farbabfolgen (mit weniger Farben), so dass Strukturen erkennbar bleiben 4 ANZEIGEFUNKTIONEN 34 sprechend dem angezeigten Bild eingestellt. Alternativ gibt es die M”glich- keit, beim Aufruf von Dialogboxen die Farben auf die des Desktops umzu- stellen. Nach Verlassen der Dialogbox werden dann wieder die Farben des Bildes angezeigt. Als dritte M”glichkeit kann man noch einstellen, dass die Farben des Bildes nur solange angezeigt werden, wie sich der Mauszeiger im Fenster des Bildes befindet. Die Anzeige im Fenster wird durch den Menpunkt Fenster im Zeigen- Men aufgefufen, die Anzeige auf dem ganzen Bildschirm durch den Menpunkt Bildschirm. In jedem Fall wird zun„chst intern eine Bildliste aller betroffenen Bilder erstellt, die im weiteren die im Fenster dargestellten Bilder festlegt. Diese Bildliste ist unabh„ngig von sp„teren Ver„nderungen der Objekte, sie bleibt unver„ndert, auch wenn man zus„tzliche Bilder selektiert oder deselektiert (was natrlich nur beim Anzeigen in einem Fenster m”glich ist, die Ganzsei- tendarstellung erm”glicht natrlich keinen Zugriff auf das Objekt-Fenster). Anzeigeoptionen Die Anzeigeoptionen entsprechen denen der Version 5.0, allerdings ist kon- tinuierliches Anzeigen (bisher?) nur in Ganzseitendarstellung m”glich. Dies- bezgliche Einstellungen werden in Bild-Fenstern einfach ignoriert. Darberhinaus verwaltet CHAOSultd jetzt fr jede Bildliste (also fr jedes Bild-Fenster) eigene Optionen, man kann bei deren Einstellen w„hlen, ob die Einstellungen nur fr diese lokalen Optionen gelten sollen, oder ob sie auch global bernommen werden sollen, was aber nur heisst, dass sie dann fr die im folgenden ge”ffneten Bild-Fenster gelten. Einstellen lassen sich die Anzeigeoptionen zusammen mit weiteren Parame- tern unter dem Menpunkt Optionen. Dort kann man zun„chst den Anzeigemodus mit Warten auf Taste und Kon- tinuierlich einstellen. Darunter kann man die Wartezeiten fr ein Bild und am Ende der ange- zeigten Bilder einstellen, wobei man die Zeiten sowohl numerisch (in ms)22 wie auch mit Hilfe eines Sliders w„hlen kann (dabei dient das Anklicken des grauen Balkens nicht zum Verschieben des Sliders, sondern der Slider wird entsprechend des als Text angezeigten Wertes gesetzt). Die Wartezeit muss mindestens auf 20 ms gesetzt werden, da es sonst zu Bildschirmflackern kommt, gibt man kleinere Zeiten an, so wird die Wartezeit automatisch auf diesen Wert gesetzt. Desweiteren kann man noch einstellen, ob die Bilder nur einmal oder wieder- holt angezeigt werden sollen (nur dann findet die Wartezeit am Anzeigeende Verwendung), und ob im zweiten Fall dann wieder mit dem ersten Bild an- gefangen werden soll ('- > - >') oder ob die Bilder abwechselnd vor- und rckw„rts durchgegangen werden sollen ('- > < -'). ____________________________________22 aus technischen Grnden nur in 5 ms Schritten, ist der Wert nicht durch 5 teilbar wird er abgerundet; 4 ANZEIGEFUNKTIONEN 35 4.2 Bildvergleich Mit der Funktion Bildvergleich k”nnen Bilder (genauer die Information in den Bitmaps der Bilder) durch logische Verknpfung verglichen werden. Wird die Funktion aufgerufen, so muss man zun„chst in einer Dialogbox angeben, welche Verknpfung (and, or oder xor) ausgefhrt werden soll. Sind die Bilder verschieden gross so bestimmen die maximalen Abmessungen die Gr”sse des resultierenden Bildes. In diesem Fall kann man noch w„hlen, ob die kleineren Bilder relativ zu diesem Gr”ssten zentriert oder im linken oberen Eck eingesetzt werden sollen. Die Farbtiefe des Ergebnisses bestimmt sich ebenfalls aus der des Bildes mit der gr”ssten Farbtiefe. Nach dem Verlassen des Dialoges werden die Bilder verknpft und das Ergebnis in einem Anzeige- Fenster dargestellt. Man beachte, dass es je nach Bilderzahl und Bildgr”sse unter Umst„nden et- was l„nger dauern kann, bis die Verknpfung der Bilder durchgefhrt wurde und das Anzeige-Fenster ge”ffnet wird. Bildvergleiche zweier Bilder kann man mit der Verknpfung xor durchfhren; dann bleiben im resultierenden Bild genau die Teile der Bilder brig, die nicht gleich sind (mit der Verknpfung and kann man umgekehrt die Bildteile erhalten die gleich sind). 4.3 Block zeigen Mit der Funktion Block zeigen kann man sich anzeigen lassen, welchem Bild- ausschnitt ein oder mehrere andere Bilder in einem (Mutter-)Bild entspre- chen. Wie beim Bildvergleich wird ein Anzeige-Fenster ge”ffnet, in dem das Er- gebnis angezeigt wird. Ergebnis ist in diesem Fall das Bild, das den gr”ssten Ausschnitt besitzt, in diesem sind die Ausschnitte, die die anderen Bilder darstellen als Rechtecke markiert. (Ob es sich dann wirklich um Bl”cke han- delt ist natrlich eine andere Frage). Die Funktion wird nicht von allen Bildtypen untersttzt. Es muss zum einen ein Koordinatensystem existieren, damit man berhaupt von einem Aus- schnitt sprechen kann, und dieses Koordinatensystem muss in einfacher Wei- se auf die Bitmap abgebildet sein, damit Bl”cke markiert werden k”nnen. (Die erste Voraussetzung erfllen bisher alle Routinen, die zweite wird etwa von 3d-Fractalen verletzt). 4.4 Konstante anzeigen Mit dieser Funktion kann man sich in einem Bild die Lage einer durch die Parameter bestimmten Konstante (zweikomponentig, x- und y- Komponente bzw. Real- und Imagin„rteil) anzeigen lassen. Abgesehen davon, dass die Funktion nur auf ein Bild wirkt, ist sie analog zum Block anzeigen. 4 ANZEIGEFUNKTIONEN 36 4.5 Koordinaten anzeigen In allen Bildern, zu denen ein Koordinatensystem geh”rt, kann man die Koordinaten am Ort des Mauszeigers anzeigen lassen. Ruft man die Funktion auf, so wird im Fenstertitel die Mausposition in Pixel und Koordinaten angezeigt, solange sich der Mauszeiger im Fenster befindet. Die Funktion wird beendet, sobald man eine Funktion aufruft, ein anderes Fenster nach oben holt eine Taste drckt etc. Punktinfo Nicht beendet wird die Funktion durch einen Doppelklick in das Fenster. Da- durch wird stattdessen ein Punktinfo fr den betreffenden Punkt aufgerufen (sofern von den Routinen unterstzt, bisher nur bei Fractalen). 4.6 neues Objekt Bei allen Bild- und Anzeige-Fenstern kann man mit der Funktion neues Objekt im Extra-Men ein neues Bild-Objekt erzeugen, das das angezeig- te Bild enth„lt. Bei Bild-Fenstern wird wirklich unmittelbar das angezeigte Bild bernommen (also insbesondere mit der Farbtiefe des Desktops), bei Anzeige-Fenstern das Bild, so wie es bei Aufruf des Anzeige-Fensters er- zeugt wurde (also unter Umst„nden mit einer anderen Farbtiefe als der des Desktops). (Fr Bild-Fenster ist die Funktion im Moment etwas berflssig, sie existiert gewissermassen im Vorgriff auf die fr sp„ter vorgesehene M”glichkeit, Bilder fr die Anzeige zu konvertieren.) 4.7 Bild-Parameter anzeigen Unter Bildparameter im Zeigen-Men kann man sich die allgemeinen Bildpa- rameter eines Bildes anzeigen lassen. Angezeigt wird o Bildname und Dateipfad Name und Pfad k”nnen ediert oder durch Anklicken des Quadrates rechts ber dem Pfad mittels der Dateiselectorbox ge„ndert werden o Bildtyp, etwa Bild (fr einfaches Bild) oder der Fraktaltyp o Bildgr”sse hier wird die Gr”sse in Bild-Punkten angegeben. bei unfertigen Bildern wird neben der H”he des fertiggerechneten Bildes in Klammern die aktuell vorliegende Gr”sse des berechneten Teilbildes angegeben Ausserdem wird die Zahl der Farben angegeben o Gr”sse der Bitmap (Breite mal H”he mal Zahl der Bitmaps) kann bei Verwendung von Rastern von der Bildgr”sse abweichen, dann wird bei der Bildgr”sse ein Rasterpunkt als ein Punkt, bei der Gr”sse der Bitmap als 2x2 bzw. 4x4 Punkte gez„hlt 4 ANZEIGEFUNKTIONEN 37 o Speicherbedarf des gespeicherten (meist also gepackten) Bildes und Speicherbedarf des vollst„ndig berechneten entpackten Bildes Ausserdem hat man von hier Zugriff auf die Farbtabelle des Bildes, mit dem Button Farben kann man in den Farbselektor verzweigen. Žnderungen des Bildnamens und Pfades werden mit Ok bernommen, mit Abbruch verworfen. Žnderungen der Farbtabelle bleiben auch bei Abbruch bestehen, wenn man den Farbselektor mit Ok verlassen hat. Bildparameter k”nnen auch fr Anzeige-Fenster angezeigt werden, dann wer- den natrlich nicht die Parameter eines Objektes sondern die des angezeigten Bildes dargestellt. 4.8 Farben Mit diesem Menpunkt hat man direkten Zugriff auf die Farben eines Ob- jektes. 4.9 Fraktal-Parameter anzeigen Mit dem Menpunkt Parameter im Zeigen-Men kann man sich die Parame- ter eines Fraktals anzeigen lassen. Details sind Sache der Berechnungsrouti- nen. 4.10 Info anzeigen Unter Info kann man eine Dialogbox aufrufen, in der man einige mehr oder weniger (eigentlich weniger) interessante Informationen ber die berechneten Bilder anschauen kann, im wesentlichen die Berechnungszeit, die Zahl der berechneten Iterationen und die Zahl der gezeichneten Punkte. Ist genau ein Fraktal selektiert, so kann die Berechnungsroutine fr das Bild eine detaillierte Info-Box ausgeben, die dann natrlich von der Berechnugs- routine abh„ngt. Stellt die Berechnungsroutine eine solche Funktion nicht zur Verfgung, un- tersttzt aber die Ausgabe von Bildinfos23, oder sind mehrere Bilder betrof- fen, so wird eine Info-Box angezeigt, in der die Anzahl der Bildpunkte, die Zahl der berechneten Iterationen24 sowie die ben”tigte Rechenzeit - insge- samt und pro Punkt bzw. Iteration - ausgegeben wird. ____________________________________23 indem sie dem Verwaltungsteil Informationen ber Berechnungszeit so- wie Iterations- und Punktanzahl zur Verfgung stellt 24 was im einzelnen unter einer Iteration zu verstehen ist liegt bei der Berechnungsroutine; korrekter w„re vieleicht auch die Bezeichnung Berech- nungsschritte - nicht alle Routinen sind iterativ 5 INPUT/OUTPUT 38 5 Input/Output 5.1 Speichern Mit den Menpunkten Speichern und Speichern ... kann man Objekte ab- speichern. Fr Fraktale und Filme gibt es ein eigenes Dateiformat, Bilder k”nnen im GEM-Image-Format (inclusive XIMG-Header) und (aus Grnden der Tradi- tion) im Stad-Format gespeichert werden; beim Stad-Format wird nur eine Bitplane (wie beim Anzeigen auf einem monochromen Bildschirm) und gege- benfalls nur die linke obere Ecke gespeichert. Fraktale lassen sich ebenfalls in diesen Bildformaten speichern, dabei werden aber die Bild-Parameter nicht mit abgespeichert, so dass als Bild gespeicherte Fraktale nicht als gespeichert betrachtet und gekennzeichnet werden. Speichern ... unterscheidet sich von Speichern dadurch, dass man zun„chst in der Fileselectorbox ein Dateipfad und optional ein Extension angeben kann. Der Pfad wird dann zum Defaultpfad, der fr alle Objekte vorgeschla- gen wird; mit dem Extension kann der Bildtyp gew„hlt werden (PAC Stad, IMG GEM-Image). Ist ein Extension angegeben, so werden auch Fraktale defaultm„ssig in diesem Format gespeichert. Im Modus Speichern ist der Defaultpfad der in den Einstellungen angegebene, er wird aber nur verwendet, wenn der Pfad eines Bildes noch nicht gesetzt ist (das ist dann der Fall, wenn das Bild neu erzeugt wurde und nicht geladen). Fr jedes zu speichernde Objekt wird nun zun„chst eine Dialogbox aufge- baut, in der die Nummer des Objektes, der Objekttyp (Fraktal oder Bild) und der Objektstatus (ge„ndert oder unver„ndert,d.h. gespeichert) angezeigt wird (die Box kann in den Einstellungen abgestellt werden, s.u.). Unter diesen zur Information dienenden Angaben befindet sich der Bildna- me und der Dateipfad, ausserdem wird das Dateiformat angezeigt. Dieses kann man durch Anklicken eines der Button „ndern, es wird dann auto- matisch das entsprechende Extension in den Namen eingetragen. Mit dem Quadrat-Button k”nnen Namen und Pfad via Dateiselectorbox ge„ndert werden, natrlich ist dies auch direkt mit der Tastatur m”glich. Der Dateityp, unter dem ein Bild oder auch ein Fraktal abgespeichert wird, wird durch das hier eingestellte Dateiextension festgelegt. CHS ist nur bei Fraktalen m”glich und bedeutet das Abspeichern als Fraktal; mit PAC oder IMG wird das Fraktal oder das Bild im entsprechenden Dateityp gespei- chert. Andere Extension sind nicht m”glich; versucht man mit einem anderen Extension zu speichern, so korrigiert CHAOSultd das Extension, gibt eine Meldung aus und verl„sst die Dialogbox nicht. Zum Verlassen der Box stehen vier Button zur Verfgung: bei Speichern wird das Bild gespeichert und die Dialogbox fr das n„chste Bild angezeigt, weiter geht zum n„chsten Bild ber ohne das aktuelle Bild zu speichern, Abbruch bricht den ganzen Speicherprozess ab. Bleibt noch Info aus. Mit diesem Button kann man veranlassen, das fr die noch folgenden zu speichernden Bilder keine Eingaben mehr gemacht werden k”nnen. CHAOSultd stellt dann nur noch die Parameter in der gleichen Weise 5 INPUT/OUTPUT 39 wie bisher dar, geht aber anschliessend sofort mit den Defaultparametern zum Speichern ber (Dies l„sst sich auch von Anfang an erreichen, indem man in den Einstellungen die Nachfrage bei save abstellt. Es ist aber zumindest anfangs zu empfehlen, wenigstens beim ersten Bild zu berprfen, ob die Speicherfunktion auch das tut, was man wollte.). In diesem Fall kann das Abspeichern durch Drcken der ESC-Taste abgebrochen werden. Kommt es beim Speichern zu einem Namenskonflikt (eine Datei soll erzeugt werden, die schon besteht) so wird dies (abh„ngig von den Einstellungen des Programms) in einer der Dialogbox beim Speichern sehr „hnlichen Box angezeigt. Man kann hier den Namen nochmals „ndern, und die Box wie- derum auf viererlei Weise verlassen. šberschreiben speichert das Objekt mit dem eingestellten (eventuell ge„ndertem) Namen ohne sich um eine eventu- ell bestehende Datei zu kmmern, Weiter und Speichern arbeiten wie oben beschrieben; Msg. aus schaltet analog zu Info aus die Warnung von šber- schreiben ab. Gespeicherte Objekte werden auf dem Desktop abgehakt dargestellt, Frak- tale, die nur als Bilder gespeichert wurden gelten wie gesagt nicht als gespei- chert. Filme werden erst nach allen anderen Objekten gespeichert. Sie k”nnen prin- zipiell erst gespeichert werden, wenn alle in ihnen enthaltenen Objekte ge- speichert sind; andernfalls erh„lt man eine Fehlermeldung. 5.2 Laden Mit dem Eintrag Laden im Men Datei kann man Objekte wieder einladen. Ausser den speicherbaren Bildformaten k”nnen auch das Degas-Format (mo- nochrom!, PIC) und das (nichtgepackte) Degasformat (PI1-3) geladen wer- den. Es erscheint die Dateiselectorbox, mit der einzelne oder auch mehrere Bilder ausgew„hlt werden k”nnen. Gibt man explizit einen Dateinamen an, so wird diese eine Datei geladen. Gibt man aber keinen Dateinamen an, so werden alle in der Dateiselector- box gerade dargestellten Dateien, der untersttzten Dateiformate (also alle Dateien mit den Extension CH?, PIC, PI?, PAC und IMG) geladen. Das Einladen l„sst sich durch Drcken der Esc-Taste abbrechen. Beim Laden von Filmen werden die in diesen enthaltenen Bildern - sofern sie nicht bereits geladen sind - automatisch nachgeladen. 5.3 Drucken Alles was von Druckroutinen in CHAOSultd existiert sind die Menpunkte Bilder drucken und Druckparameter. Irgendwann soll es einmal Hardcopyroutinen als externe Routinen geben. Von mir sicher nur fr 24Nadler, eventuell auch fr GDOS. 6 EINSTELLUNGEN 40 5.4 Clipboard CHAOSultd untersttzt das Clipboard, obwohl ich nicht so recht weiss, wofr man das eigentlich braucht (naja, ich will nicht ungerecht sein, in einer Multitasking-Umgebung mag es schon seine Berechtigung haben). Die Untersttzung ist allerdings nicht vollst„ndig, mit dem Clipboard kann nur gearbeitet werden, wenn das Clipboard-Pfad gesetzt ist (z.B. von einem Clipboard-Accessory oder von Gemini oder von was auch immer; CHAOSultd selbst setzt den Pfad jedenfalls nicht). Ist der Clipboard-Pfad nicht gesetzt, so brechen die Clipboard-Funktion ohne Fehlermeldung ab. Man kann einerseits Bilder (nein ein Bild, das ist ja das Dumme am Clip- board) aus dem Clipboard laden, sofern eine SCRAP.IMG Datei im Clip- board liegt. Ist keine Datei vorhanden so erscheint eine Fehlermeldung, dass keine Datei im Clipboard liegt. Zum anderen kann man ein Bild (wenn genau eins selektiert ist) im Clip- board als SCRAP.IMG Datei (und nur als solche) ablegen. Alle eventuell vorhandenen SCRAP-Dateien werden gel”scht. 6 Einstellungen 6.1 Speicher-Info Das Speicher-Info geh”rt natrlich eigentlich auch nicht zu den Einstellungen ist aber im gleichen Menpunkt Optionen gelandet. Im Speicher-Info kann man sich anzeigen lassen, wieviel (interner) Speicher gerade wofr ben”tigt wird ... šber dem Speicher-Info findet sich brigens noch ein Eintrag, in dem man das Objekt-Fenster ein- und ausschalten kann. (Ausschalten kann man es natrlich auch durch Schliessen des Fensters.) Jetzt aber zu den eigentlichen Einstellungen. Diese sind aus Platzgrnden auf zwei Dialogboxen verteilt. 6.2 Einstellungen I Hier finden sich die Einstellungen fr Dialogfenster, Berechnung und R„nder beim Anzeigen. Im einzelnen kann man w„hlen: o Dialoge in Fenster legen o Dialoge zentrieren o Info-Dialoge in Fenster legen (gilt nur fr die Dialoge beim Berechnen; die Info-Dialoge beim Laden/Speichern werden nicht in Fenster gelegt) o die Positionierung der Info-Dialoge, an der letzten Position, zentriert oder rechts oben 6 EINSTELLUNGEN 41 o Darstellung des Randes beim Anzeigen auf dem Bildschirm: weiss, grau oder schwarz Darstellung des Randes beim Anzeigen in Fenstern o Berechnung von Bildern anzeigen oder verdeckt berechnen o Puffern der Ausgabe auf den Bildschirm o Gong am Berechnungsende; der Button hinter dem Text, dient zum Testen des Gonges Anmerkung: der Gong wird durch Ausgabe des Zeichens 7 (nicht die Ziffer 7, sondern der ASCII Code 7) via Gemdos erzeugt. Das ist der selbe Gong, der (ensprechende Einstellung im Kontrolfeld vorausge- setzt) auch ert”nt, wenn man neben eine Dialogbox klickt. Dazu ist es n”tig, dass in den Systemvariablen das entsprechende Flag gesetzt ist, das man eben auch l”schen kann, beispielsweise mit dem Kontrol- feld. Deswegen setzt CHAOSultd diese Flag beim Programmstart und setzt es beim Verlassen wieder auf den alten Wert zurck. Žndert man nun w„hrend CHAOSultd l„uft mit einem Accessory dieses Flag, so wird erstens (beim L”schen des Flags) der Gong beim Berechnungs- ende nicht funktionieren und zweitens diese Žnderung beim Verlassen von CHAOSultd berschrieben. Das Ein- oder Ausschalten des Gongs schaltet auch die drei Gongs ein bzw. aus, mit denen auf eine Garbage Collection hingewiesen wird. o im Prinzip ist auch noch vorgesehen, hier die Cursor-Form bei Block einzustellen. Gegenw„rtig wird nur der Maus-Cursor untersttzt, so dass die Einstellung sich erbrigt 6.3 Einstellungen II Im zweiten Teil der Einstellungen kann man w„hlen: o welcher Dateipfad standartm„ssig zum Laden bzw. Speichern verwen- det wird o ob vor dem Speichern die Info-Dialogbox angezeigt werden soll o welche Sicherheitsabfragen CHAOSultd t„tigen soll vor dem šberschreiben von Dateien vor dem (unwiederuflichen) Abbrechen der Berechnung vor dem L”schen von Objekten und vor dem Verlassen des Programmes o wieviel Speicher CHAOSultd freilassen soll o ob neue/geladene Bilder gepackt werden sollen o fr wieviele Bilder im Filmeditor Speicher reserviert werden soll (min. 256, max. 32767) 6 EINSTELLUNGEN 42 6.4 Parameter-Voreinstellungen Mittels Shift-Klick auf einen der Eintr„ge zum Erzeugen neuer Bilder eines bestimmten Fraktal-Types kann man die Voreinstellungen der Parameter fr diese Fraktal-Typ aufrufen und die Parameter „ndern - soweit diese Funktion untersttzt wird, was aber (bislang) meist der Fall ist. Ebenso lassen sich die allgemeinen Bildparameter fr jeden Bildtyp einstellen. Seltener vorhanden ist eine Funktion die bei Control-Klick auf einen dieser Eintr„ge aufgerufen wird, und fr die es keine fest vorgesehene Verwendung gibt, sie wird einfach fr irgendwelche zus„tzlichen Aktionen, die wom”glich gebraucht werden, bereitgehalten. 6.5 Parameter speichern Durch Auswahl des Menpunktes Parameter speichern kann man die einge- stellten Parameter abspeichern. Die Parameter werden ausschliesslich in der Datei CHS_ULTD.SET im Ordner CHS_ULTD.GEM gespeichert. Zu den Parameter die gespeichert werden geh”ren die Einstellung von CHAOSultd (einschliesslich der Anzeigeoptionen und der Einstellungen der Konvertierungsroutinen), die der verschiedenen Routinen (soweit geladen) und die Positionen der Dialoge und Fenster. Dialog- und Fensterpositio- nen werden vor dem Speichern in aufl”sungsunabh„ngige Normalkoordina- ten umgerechnet, so dass diese Einstellung auch bei Aufl”sungswechsel (je- denfalls einigermassen) erhalten bleibt. Frher schon gespeicherte Parameter nicht geladener Routinen werden kopiert, sie bleiben also erhalten. 43 Teil II die Fractal-Routinen 1 der Algorithmus Fractale im Sinne dieser Routinen beruhen auf einer Verallgemeinerung von Mandelbrot- und Julia-Mengen - erstere sind auch als Apfelm„nnchen be- kannt. Apfelm„nnchen beruhen bekanntlich auf Folgen komplexer Zahlen, die durch die Rekursionsformel zn+1 = z2n- z0 definiert sind25. Das Bild entsteht dann so, dass man einen Teil der komplexen Ebene auf den Bildschirm abbildet und fr jeden Punkt z0 untersucht, ob und wenn wann die Glieder der zugeh”rigen Folge dem Betrage nach einen bestimmeten Wert (die Abbruchbedingung) berschreitet. Die Farbe des Punktes bestimmt sich dann aus der der Anzahl der n”tigen Iterationen bis zum Erreichen der Abbruchbedingung. Julia-Mengen werden fast genauso berechnet, allerdings lautet die Rekursi- onsformel hier zn+1 = z2n+ c wobei c eine fr alle Bildpunkte gleiche, komplexe Konstante ist. In den Fractal-Routinen von CHAOSultd sind nun diese beiden Formeln zur folgenden zusammengefasst: zn+1 = z2n+ ffz0 + c wobei ff eine (reelle) Konstante ist. Apfelm„nnchen erh„lt man aus dieser Formel leicht durch ff = 1 und c = 0, Juliamengen durch ff = 0 und c 6= 0. Diese Berechnungsformel liegt den Bildern, die mit den Menpunk- ten Fractal(e) und 3d Fractal(e) erzeugt werden, zugrunde. Bei pseudo- dreidimensionalen Bilder wird dabei die Berechnungstiefe eines Punktes nicht durch seien Farbe dargestellt, sondern direkt als H”heninformation verwendet. Fr freie Fract. kann die Berechnungsformel explizit angegeben werden so dass man selbst experimentieren kann. ____________________________________ 25 statt des '-' findet man teilweise auch ein '+' 2 PARAMETER 44 2 Parameter 2.1 ben”tigte Parameter Wie gesagt, wird ein Ausschnitt der komplexen Zahlenebene auf den Bild- schirm abgebildet. Dazu muss man natrlich diesen Ausschnitt, durch den minimalen und maximalen Real- und Imagin„rteil festlegen. Des weiteren muss ff, die Konstante c (Real- und Imagin„rteil), die Abbruchbedingung26, also die Zahl die der Betrag der komplexen Zahl aus der Rekursionsformel bersteigen soll, und die maximale " Tiefe", d.h. die maximale Anzahl von Rekursionsschritten, nach der die Berechnung sp„testens abgebrochen wird, festgelegt werden. Die max. Tiefe kann bis 9999 gross werden, je gr”sser sie ist, desto l„nger dauert allerdings auch die Berechnung des Bildes. (Bei einer Tiefe von 9999 kann die Berechnung eines einzigen Bildes durchaus mehrere Tage in An- spruch nehmen. Im allgemeinen verwendet man kaum Tiefen ber 250). Die Abbruchbedingung kann aufgrund des fr schnelle Berechnungen (s.u.) verwendeten Festkommazahlenformates nicht gr”sser als 11 werden, aufgrund ihrer Definition ist sie stets positiv, also gr”sser 0. Fr die anderen Parame- ter wird lediglich geprft, ob der minimale Real-/ Imagin„rteil auch wirklich kleiner als der maximale ist, ebenfalls aufgrund des Zahlenformates drfen diese Parameter dem Betrage nach nicht gr”sser als ca. 127 sein. Da die interessanten Strukturen aber ohnedies im Bereich von 3 real und 2 ima- gin„r liegen (zumindest in etwa) sollten sich damit trotz der an dieser Stelle fehlenden Sicherheitsabfragen keine Probleme ergeben27. Weiterhin muss man natrlich festlegen, wie die Anzahl der Rekursionsschrit- te in Farben umgesetzt werden soll. Auch hier erlaubt CHAOSultd wesentlich mehr Einstellungsm”glichkeiten als andere Programme. Gew”hnlich ordnet man die Farben der Schrittanzahl so zu, dass sich die Farben immer wieder zyklisch wiederholen. In CHAOSultd sind dagegen ma- ximal fnf unabh„ngige Bereiche m”glich. Fr jeden Bereich, der durch die maximale Schrittanzahl, fr die er noch gelten soll, festgelegt wird, kann man entweder eine feste Farbe oder aber das zyklische Wiederholen einer bestimmten Anzahl von Farben festlegen. Im letzteren Fall muss man an- geben, welche Farben (kleinste und gr”sste Nummer), welche Farbe zuerst, und wieviele verschiedene Schrittanzahlen fr eine Farbe man haben will. Zu guter letzt kann man noch w„hlen, in welcher Farbe Punkte erscheinen sollen, fr die die maximale Tiefe erreicht wurde. Ausser diesen Parametern, die den Bildinhalt beschreiben, kann man zwi- schen zwei Berechungsroutinen w„hlen: schnell und exakt, wobei schnell mit einem speziellen Festkommazahlenformat arbeitet, w„hrend exakt die Re- ____________________________________26 viele Apfelm„nnchenprogramme verwenden 2 als Abbruchbedingung, allerdings finde ich die Bilder, die mit der Abbruchbedingung 10 entstehen, sch”ner 27 im Berechnungsmodus exakt (s.u.) lassen sich theoretisch auch gr”ssere Bereiche realisieren, aber wie gesagt, finden kann man da an sich nichts 2 PARAMETER 45 chenroutinen von Turbo/Pure C verwendet28. (exakt ist natrlich wesentlich langsamer, weshalb ich von der Benutzung im allgemeinen abrate). 2.2 Eingabe der Parameter Wie Sie sehen ist fr jedes Bild also eine ziemlich Anzahl an Parametern ein- zustellen. Dazu kommt noch, dass die meisten Parameter doppelt vorhanden sind, um Bildfolgen, bei denen nur das erste und letzte Bild angegeben wer- den, zu erm”gliche - die Parameter der brigen Bilder werden dann durch Interpolation berechnet. Fr gew”hnliche Bilder, wie man sie mit anderen Fraktalprogrammen auch erzeugen kann, gibt es aber einige Funktionen, die das Einstellen der Para- meter erleichtern. Um Fractale zu erzeugen klickt man in der Menleiste den Menpunkt Frac- tal(s) im Men Neu an. Es erscheint dann die (ziemlich umfangreiche, also nicht erschrecken) Dialogbox zum Eingeben der Parameter, in der (sofern die Einstellungsdatei CHS_ULTD.SET korrekt geladen wurden) bereits Parame- ter voreingestellt sein sollten (diese Voreinstellung ist jedesmal dieselbe, sie kann ge„ndert werden, wenn man den Menpunkt Fractal(s) mit gedrckter Shift-Taste aufruft; bei einem erneuten Aufruf findet man also nicht wieder die Parameter vor, die man zuletzt eingestellt hatte). Einzelbilder Zun„chst sollen der Einfachkeit halber nur die Parameter erl„utert werden, die man fr die Erzeugung eines einzelnen Bildes ben”tigt, wenn man also in den allgemeinen Parametern unter Bilderzahl 1 eingetragen hat. Oben links wird angezeigt, welchen Bildnamen, Bilderzahl und Bildgr”sse man eingestellt hat. Darunter kommen zweispaltig die einzelnen numerischen Bildparameter, wie in 2.1 erl„utert. Dabei interessiert fr Einzelbilder nur die linke Spalte, die rechte bleibt unbenutzt; auch die Button rechts von den Parametern brau- chen vorerst nicht zu interessieren. Nun folgt noch die Einstellung des Berechnungsmodus, schnell oder exakt. Die Einstellung der Farben wird aus Platzgrnden lediglich angezeigt (im kleinsten Systemzeichensatz), eingestellt wird sie in einer eigenen Dialogbox, in die man mit dem Button Farbcod. gelangt. In dieser Box gibt man die Angaben fr bis zu fnf Farbbereiche ein, die aber nicht alle genutzt werden mssen. Zun„chst kommt die Angabe, bis zu welcher Tiefe der Bereich gelten soll. Der erste Bereich beginnt mit der Tiefe 0, der zweite direkt nach dem ersten usw. Der letzte verwendete Bereich muss ____________________________________28 das heisst es wird mit 80 Bit Fliesskommazahlen und einer entsprechen- den Genauigkeit von 19 signifikanten Ziffern gearbeitet. Ausserdem wird ein eventuell vorhandener Fliesskommacoprozessor automatisch genutzt. 2 PARAMETER 46 durch die Angabe von 9999 als Endtiefe gekennzeichnet werden, folgende Be- reiche werden, auch falls vorhanden nicht mehr beachtet. Bei den Bereichen wird nicht darauf geachtet ob sie sinnvoll mit der max. Berechnungstiefe zusammenpassen, d.h. man k”nnte auch bei einer max. Berechnungstiefe von meinetwegen 50 einen Bereich von 75-100 definieren, obwohl ein solcher Bereich nie genutzt wrde. Als n„chstes muss man festlegen, ob in dem Bereich die Farben zyklisch durchgewechselt werden sollen oder nicht. Dazu dient der Button zykl.; ist er aktiviert, so werden die Farben durchgewechselt, ansonsten nicht. Im letz- teren Fall muss nur noch festgelegt werden, welche Farbe dem Bereich zu- geordnet werden soll. Dies geschieht durch den Eintrag Farbe. Dabei gibt es eine Besonderheit, gibt man als Farbe -1 an, so wird die auf die zuletzt verwendete Farbe folgende Farbe hergenommen, handelt es sich um den er- sten Farbbereich, so wird die Farbe 1 verwendet (auf diese Weise kann man nach zyklischen Bereichen im Farbverlauf fortfahren ohne sich erst die letzte Farbe des Bereiches berlegen zu mssen). Bei zyklischen Bereichen legt der Eintrag Farbe die erste verwendete Farbe fest. In den Eintr„gen ... bis ... gibt man an, welche Farben hergenommen werden sollen (dabei muss der erste Eintrag kleiner sein als der zweite; beim zweiten Eintrag kann man -1 fr die gr”sste m”gliche Farbe, abh„ngig von der Farbzahl angeben) und mit Step erkl„rt man, wieviele Tiefenstufen in der gleichen Farbe dargestellt werden sollen. Als letzter Farbparameter muss schliesslich noch eingestellt werden, in welcher Farbe Punkte dargestellt werden sollen, die "tiefer" als die max. Tiefe liegen, auch hier ist -1 als Joker verwendbar. Žhnlich wie man mit Farbcod. in die Farbeinstellung gelangt, kann man mit Allg. Par. die Dialogbox fr die Einstellung der allgemeinen Parameter aufrufen, etwa um Bildformat, Name oder Bilderzahl nochmal zu „ndern. Was jetzt noch fehlt, sind die Button -> alles, -> links und -> rechts. Mit diesen ruft man Popup-Mens auf, die verschiedene Funktionen zur Eingabe der Parameter bieten. Das alles-Popup bietet Funktionen, die sich auf alle Parameter (d.h. die Para- meters„tze fr das erste und die fr das letzte Bild, auch wenn ich fr letztere auf den n„chsten Abschnitt verweisen muss) beziehen. Hier kann man erstens alle Eintr„ge im gesammten Dialog l”schen, zweitens die Voreinstellung auf- rufen (die schon bei Aufruf des Dialoges eingestellt war) und drittens, die Parameter links nach rechts kopieren. Die links- und rechts-Popups sind gleich, sie unterschiedet nur die Tatsa- che, dass links auf die linke und rechts auf die rechte Parameter-H„lfte wirkt, und teilweise - wenn man bei der Auswahl im Popup-Men gleichzeitig die Shift-Taste drckt - jeweils auf die gemeinsamen Parameter. In diesem Popup stehen die folgenden Optionen zur Verfgung: man kann die Para- meter l”schen, man kann aus Objekten Daten holen und man kann sich das Verh„ltnis von H”he zu Breite der Parameter und des Bildformates ansehen. Es existiert noch ein weiterer Eintrag im Popup-Men, n„mlich Random, 2 PARAMETER 47 der aber bei Fractalen nicht aktiv ist29. Beim Holen von Daten kann man entweder nur die nach rechts und links getrennten Daten bernehmen oder mit Shift alle (natrlich nur, wenn das Objekt ein Fractal ist). M”glich ist die Auswahl eines (beliebigen) Objektes, eines Blockes oder einer Konstante (die dann bei c eingetragen wird). Ist das Objekt kein Fractal, so wird nur der Bildausschnitt (wie bei Block) bernommen. Soweit zu den Parametern fr die Erzeugung eines Bildes. Ich kann gut verstehen, dass Ihnen das ganz sch”n kompliziert vorkommt. Es ist wohl auch nicht ganz einfach, aber zum einen muss man ja nicht jedes Detail ausnutzen und zum anderen muss man einfach ein bisschen herumprobieren, dann findet man sich mit der Zeit schon zurecht. Wer allerdings geglaubt hat, schlimmeres k”nnte ihm nicht wiederfahren, der hat sich geirrt, es kommt noch schlimmer: Fractalbildfolgen Wie bereits erw„hnt geh”rt es zu den F„higkeiten von FRACTAL, nicht nur Einzelbilder, sondern auch Bildfolgen berechnen zu k”nnen. Dabei mssen die Bildparameter fr das erste und das letzte Bild sowie die Bildzahl an- gegeben werden, FRACTAL interpoliert dann die Werte fr die dazwischen liegenden Bilder. Die Parameter werden in der selben Dialogbox eingegeben, wie die Parameter von Einzelbildern30. Dabei dient die linke Spalte fr die Parameter des ersten, und die rechte Spalte fr die Parameter des letzten Bildes. Alle Einstellungen die nur einfach vorhanden sind gelten fr alle Bil- der der Bildfolge, dies sind Bildgr”sse, Berechnungsmodus sowie die Farben. Bei den anderen Parametern kann schliesslich noch die Art der Interpolation gew„hlt werden. Dazu dienen die Button rechts von den Parameterangaben. Gew„hlt werden kann lineare (0), progressive (+) und degressive (-) Inter- polation. Bei linearer Interpolation sind die (absoluten) Unterschiede zwi- schen den Parametern zweier aufeinanderfolgender Bilder stets gleich gross, bei progressiver Interpolation nehmen sie zu und bei degressiver ab. Fr den Bildausschnitt existiert noch l, hier wird so interpoliert, dass der relative Unterschied (in der Bildfl„che) konstant ist (irgendwie so). 2.3 3d Fractale Im Vergleich zu den normalen Fractalen mit ihrer komplizierten Farbgestal- tung sind 3d Fractale fast schon einfach. 3d Fractale k”nnen nur zweifarbig erzeugt werden. Bei 3d Fractale wird die Berechnungstiefe durch die Tiefe oder H”he der gezeichneten Punkte dargestellt. ____________________________________ 29 die Popups existieren in gleicher Form (aber mit teilweise anderen Ein- schr„nkungen) auch bei den anderen Berechnungsroutinen 30 Wer also die Parametereingabe fr ein Bild verstanden hat, der wird auch mit Bildfolgen keine grossen Probleme haben, insofern stimmt die oben gemachte Bemerkung, es k„me noch schlimmer, vielleicht doch nicht so ganz. 2 PARAMETER 48 Die Parameter entsprechen weitgehend denen von normalen Fractalen. Al- lerdings ist die maximale Tiefe bei 3d Fractalen entsprechend der Bildh”he und Breite begrenzt, damit das Bild immer in die Bitmap hineinpasst. Es kann auch nicht zwischen schneller und genauer Berechnungsroutine un- terschieden werden (verwendet wird stets die schnelle Berechnugsroutine), und die Farbeinstellung f„llt ganz weg. Eingestellt werden muss statt dessen, ob das Fractal hoch oder tief gezeichnet werden soll, und mit welchem Raster das Fractal dargestellt werden soll. Hier hilft Ausprobieren der M”glichkeiten und Anschauen der Ergebnisse glaube ich besser als langatmige Erkl„rungen. 2.4 freie Fractale Fr freie Fractale, d.h. Bilder mit frei definierter Rekursionsformel, kommen zu den Parametern fr 2d-Fractale noch einige hinzu, die in einer eigenen Dialogbox vor den anderen Parametern eingegeben werden mssen. Berechnungsformel Zun„chst einmal muss man natrlich die Berechnungsformel angeben. Die- se ist ein beliebiger Funktionsstring, der (komplexe) Konstante, Variable, Operatoren und Funktionen enthalten kann. Konstante mssen die Form Realteil + i Imagin„rteil besitzen und vorsichts- halber geklammert werden (normalerweise braucht man eh keine). An Variablen kann man zn, d.h. den momentanen Wert der Rekursionsfolge, z0 den Startwert, d.h. die komplexen Koordinaten der Bildschirmpunktes, die reelle Zahl a und die komplexe Zahl c (wie in den weiteren Parametern eingegeben) verwenden. An Operationen kann die blichen bin„ren Operationen +, -, *, / und ^ (Po- tenz) verwenden; ausserdem Klammern ( und ) und Vorzeichen -. An (komplexen) Funktionen werden untersttzt: Re | Realteil einer komplexen Zahl Im | Imagin„rteil einer komplexen Zahl konj | komplex konjugieren abs | Absolutquadrat einer komplexen Zahl (abs (x + iy) = x2 + y2) |(der Name ist eigentlich falsch!) quad | Quadrat kubik | dritte Potenz sin |Sinus cos |Cosinus exp | Exponentialfunktion log |Logarithmus Anmerkung: m”chte man die n-te Potenz einer Zahl zn verwenden (n ganz), so sollte man nicht zn^ n benutzen, sondern die Funktionen quad, kubik, und Produkte aus zn und ihnen - z.B. zn^ 4=quad(quad(zn)) - was wesentlich schneller berechnet wird. Beispiele fr eine Berechnungsformel: 2 PARAMETER 49 Apfelm„nnchen: quad(zn)-z0 Juliamengen: quad(zn)+c Die Berechnungsformel wird zur Auswertung brigens compiliert, d.h. in Maschinencode bersetzt, wenn auch nicht allzu guten. Tritt dabei ein Fehler auf, so wird dieser in einer Alertbox angezeigt, die Dialogbox kann nicht mit Ok verlassen werden. weitere Parameter fr freie Fractale Neben der Berechnungsformel kann man auch die Abbruchbedingung und die Art des Punkte-Setzens beeinflussen. Bei der Abbruchbedingung hat man die M”glichkeit eine oder zwei relevante Gr”ssen zu bestimmen, wobei der Betrag, der Real- sowie der Imagin„rteil der Folgenglieder zur Wahl stehen (die Abbruchbedingung lautet immer: Gr”sse > Abbruch, wobei Abbruch der in den Parametern wie bei normalen Fractalen angegebene Wert ist). W„hlt man zwei Gr”ssen und damit eigentlich zwei Bedingungen, so kann man noch die logische Verknpfung (and, or oder xor) zwischen diesen w„hlen. Žhnlich legt man die Bedingung zum Punkte-Setzen fest. Entweder man l„sst die Punkte entsprechend den Berechnungsschritten setzen - nur dann kann man bei den brigen Parametern auch die Farbeinstellung wie bei nor- malen Fractalen vornehmen - oder man definiert eine Bedingung die erfllt sein muss, damit ein Punkt gesetzt wird. Diese Bedingung entspricht der Abbruchbedingung und wird genauso festgelegt (man kann hier natrlich andere Kombinatinen w„hlen), allerdings werden hier Bedingungen Gr”sse < Abbruch verwendet31. Nach Verlassen der Dialogbox fr frei definierte Fractale mit Ok muss man in der ganz normalen Parameterdialogbox (wie fr normale Fractale) noch die brigen Parameter angeben. Und was soll das alles? Falls sie sich dies fragen, weil sie kaum noch verstehen, was denn nu bei welcher Einstellung wie berechnet und gezeichnet wird, soll hier noch kurz erkl„rt werden, woher frei definierte Fractale kommen. Sie kommen von Pickover-Mengen, die im Spektrum der Wissenschaft Son- derheft Computerkurzweil IV unter dem Stichwort Biomorphe beschrieben wurden. Dabei verwendet man Berechnungsformeln z.B. vom Typ zn^n + c (n=3,4,5...) und als Abbruch- wie als Punktsetz-Bedingung Re or Im. ____________________________________31 natrlich sind nicht alle Kombinationen von Abbruch- und Punktsetz- Bedingung auch sinnvoll, das sollte man sich vorher berlegen 3 UNTERSTšTZTE OPTIONEN 50 3 untersttzte Optionen Da die Fractal-Routinen gewissermassen das Mass aller Dinge bei der Entwick- lung von CHAOSultd waren32, jedenfalls haben sie die m”glichen Optionen vorgegeben, werden im Prinzip alle m”glichen Optionen von den Fractal- Routinen auch in irgendeiner Weise unterstzt. 3.1 Parameter anzeigen Alle Parameter werden angezeigt. Bei freidefinierten Fractalen muss man zur Anzeige der Berechnungsformel und Abbruch- sowie Punktsetz-Bedingung in eine zweite Dialogbox (ber den Button - >frPar) verzweigen. 3.2 Bild-Info anzeigen Fr die Fractal-Routinen steht ein umfangreiches Bild-Info fr Einzelbilder zur Verfgung, die CHAOSultd-Routine zur Anzeige von Infos ber mehrere Bilder wird untersttzt. In Einzelbild-Infos wird angezeigt: die Anzahl der Bildpunkte (nicht Pixel!) - insgesammt und als H”he mal Breite; die Berechnungszeit in Stunden, Minuten und Sekunden, sowie die Zeit pro Zeile in Sekunden und pro Punkt in Millisekunden; die mittlere Tiefe (Zahl der Iterationen geteilt durch Anzahl der Bildpunkte) und zum Vergleich die maximale Tiefe; die Anzahl der Iterationen und die Zeit pro Iteration (in Mikrosekunden); die Anzahl der n”tigen Multiplikationen, die mittlere Zeit pro Multiplikation33 und die sich daraus ergebende Zahl von Multiplikationen pro Sekunde. Die Angaben ber Multiplikationen sind bei frei definierter Berechnungsfor- mel nicht m”glich. Fr Infos ber mehrere Bilder entsprechen die Angaben ber Iterationen, Bildpunkte und Berechnungszeit denen der Einzelinfos. 3.3 Punktinfo Bei normalen Fractalen kann ein Punktinfo angezeigt werden, wobei neben Koordinaten auch die Tiefe angezeigt wird; ist sie gr”sser als die maximale Tiefe des Bildes, so wird dies durch das unendlich-Symbol (1) markiert. ____________________________________ 32 was nicht heisst, dass das so bleiben muss 33 d.h. die Berechnungszeit geteilt durch die Zahl der Multiplikationen, tats„chlich dauert eine Multiplikation an sich weniger lang, wobei auch noch zwischen Quadratur einer Zahl und Multiplikation zweier Zahlen unterschie- den werden msste 3 UNTERSTšTZTE OPTIONEN 51 3.4 Block/Konstante zeigen Block-Auschnitte enthalten k”nnen nur zweidimensionale Bilder. 3d Bilder k”nnen lediglich aus Ausschnitt in einem zweidimensionalen Bild angezeigt werden. Ebenso k”nnen keine Bl”cke aus 3d Bildern entnommen werden. Als Konstante werden die Parameter real con (x) und imag con (y) angezeigt (in zweidim. Bildern). 3.5 neu berechnen Beim neu berechnen von Fractalen k”nnen Abbruchbedingung, maximale Tiefe, Genauigkeit, Darstellung bzw. Farbtabelle, die Farbkodierung von 2d- Bildern, das Raster und der Modus von 3d-Bildern sowie fr frei definierte Fractale die Berechnungsformel, die Abbruchbedingung und die Punktsetz- Bedingung neu vereinbart werden. In der Dialogbox muss dazu einerseits der gewnschte neue Wert einer Gr”sse angegeben werden, der dann fr alle zu neu berechnenden Bilder Verwendung findet, andererseits muss das Neu-setzen dieses Wertes durch selektieren des zugeh”rigen Button aktiviert werden. Die Einstellungen fr frei definierte Fractale finden sich in einer eigenen Dia- logbox, in die man mit dem Button fr. Param. gelangt; auch die Farbtabelle wird natrlich in der blichen Weise eingegeben. Bilder werden grunds„tzlich nur neu berechnet, wenn sich ihre Parameter ge„ndert haben. 52 Teil III die Hpfer-Routinen 1 der Algorithmus Hpfer basiert auf einem Algorithmus von Barry Martin, der im Computer- Kurzweil der Zeitschrift Spektrum der Wissenschaft vorgestellt wurde. Dabei betrachtet man eine Folge von Zahlenpaaren xn und yn mit der fol- genden Iterationsvorschrift: q _________________ xn+1 = yn - sign(xn ) . abs (b . xn - c) yn+1 = a - xn wobei a, b und c frei w„hlbare Parameter sind. Die Punkte (xn ; yn ) werden in einem Koordinatensystem aufgetragen, wor- aus sich mehr oder weniger interessante Figuren ergeben. Anders als bei Fractalen (siehe Teil II) erh„lt man hier eine Vielfalt von Formen nicht so sehr aus der Wahl des Koordinatenausschnittes sondern aus der Wahl der Parameter a, b und c. Das Ergebnis h„ngt ausserdem - ebenfalls im Unterschied zu Fractalen - recht stark von der Anzahl der Iterationen ab: einerseits k”nnen ganze Bildteile unter Umst„nden erst nach sehr vielen Iterationen zum Vorschein kommen, andererseits k”nnen auch Strukturen bei zu vielen Iterationen durch die vielen gezeichneten Punkte wieder berdeckt werden. Man beachte, dass aufgrund des Algorithmus die Rechenzeit nicht von der Bildgr”sse abh„ngt34. Berechnet man kleine Bilder, so fhrt das lediglich zu einer Speicherplatz- nicht aber zu einer Rechenzeitersparnis. 2 Parameter Die Parameter sind wie blich doppelt anzugeben - fr das erste und fr das letzte Bild einer Bilderfolge; berechnet man nur ein Bild, so braucht man natrlich nur die linke Spalte auszufllen. Auch die Button fr den Interpolationsmodus sind ja bekannt. Zun„chst einmal muss man die drei Parameter a, b und c der Iterationsvor- schrift angeben; es folgen die Startwerte fr x und y sowie die Festlegung des Bildausschnittes. Aus traditionellen Grnden geschieht dies im allgemeinen nicht durch minimalen und maximalen Wert fr x und y sondern durch einen Vergr”sserungsfaktor (scale) und einen Offset, der die Position der Bildmitte angibt (jeweils fr x und y getrennt). Man kann in der Dialogbox auch durch ____________________________________34 die Rechenzeit h„ngt hier lediglich von der Zahl der Iterationen ab, weshalb sie auch vorher abgesch„tzt werden kann 3 UNTERSTšTZTE ROUTINEN 53 Anklicken des Button min/max auf die Eingabe der Minimal- und Maximal- Werte umschalten, dabei ist aber zu beachten, dass fr die Interpolation bei Bildfolgen stets mit den Vergr”sserungsfaktoren und Offset's gerechnet wird (d.h. bei Verlassen der Box werden die Werte in diesen Modus umgerechnet). Schliesslich ist noch die Iterationsanzahl anzugeben und die Schrittweite, d.h. die Zahl der Iterationen nach der jeweil ein Punkt gesetzt werden soll (nor- malerweise setzt man nach jedem Schritt einen Punkt, d.h. Schrittweite 1). Die Eingabe der Parameter wird wie bei Fractalen durch eine Reihe von M”glichkeiten untersttzt. Zus„tzlich zu den M”glichkeiten die man bei Frac- talen hat, kann man mit Random die zuf„llige Vorbelegung der Parameter a, b und c erreichen. Den Bereich fr diese Zufallszahlen kann man durch Auf- ruf des Hpfer-Meneintrages zusammen mit der CONTROL-Taste einstellen, wobei man links den minimalen und rechts den maximalen Wert angibt. Die M”glichkeit das Verh„ltnis von Bildbreite zu H”he anzuzeigen fehlt. Ebenfalls Zufallszahlen fr die Bildparameter a, b und c erreicht man durch den zus„tzlichen (zu den von den Fractal-Routinen bekannten) Interpola- tionstyp r wie random. W„hlt man r als Interpolationstyp, so wird nicht interpoliert sondern ein Zufallswert zwischen den zwei angegebenen Werten ermittelt (in diesem Fall ist auch bei der Berechnung eines einzigen Bildes die rechte Parameterh„lfte (wenigstens teilweise) relevant). Die Vorbelegung der Parameter kann man wie blich durch SHIFT-Klick auf den Hpfer-Meneintrag erreichen. 3 untersttzte Routinen Die meisten M”glichkeiten von CHAOSultd werden untersttzt. Berechnungsabbruch ist alle 256 Berechnungsschritte m”glich - wie blich durch Drcken der ESC-Taste. Man kann dabei durch gleichzeitiges Drcken von CONTROL erreichen, dass das Bild - soweit bisher berechnet - fr fertig erkl„rt wird, die Angabe fr die Iterationsanzahl wird dann entsprechend herabgesetzt (ohne Auswirkung auf weitere Bilder etwa in einer Bilderfolge). Beim Parameter anzeigen kann man umgekehrt die Iterationsanzahl wieder erh”hen, die entsprechende Angabe in der Dialogbox ist edierbar. Man kann also die gewnschte neu Iterationsanzahl eingeben, die aber gr”sser sein muss, als die Anzahl der bisher berechneten Iterationen (andernfalls wird die An- gabe schlicht ignoriert); ein bereits fertiges Bild kann auf diese Weise wieder unfertig werden. Weiter kann man Bilderinfos anzeigen lassen, wobei es aber kein ausfhrli- cheres Info fr Einzelbilder gibt. Blockroutinen werden ebenso untersttzt. Das Neu-Berechnen von Hpferbildern ist m”glich, wobei alle Parameter (einschliesslich Bildausschnitt) ver„ndert werden k”nnen. 54 Teil IV die Feigenbaum-Routinen Feigenbaum-Diagramme k”nnen nur in 2 Farben erzeugt werden. 1 Algorithmus Der Algorithmus von Feigenbaum-Diagrammen ist noch einfacher als der fr Hpfer. Dabei wird eine Folge von Zahlen nach der Rekursionsformel xn+1 = r . xn . (1 - xn ) gebildet (mit x0 6= 0, z.B. x0 = 0:5). Aufgetragen werden die Werte, die xn annimmt, gegen den Parameter r, wobei man allerdings die ersten N 1 Folgenglieder wegl„sst. Als Ergebnis erh„lt man das Feigenbaumdiagramm. Warum das so aussieht wie es aussieht kann man z.B. im Spektrum der Wissenschaft Sonderheft Computerkurzweil III nachlesen. 2 Parameter N”tige Parameter zum Plotten von Feigenbaumdiagrammen sind minimaler und maximaler Wert der Parameters r (blicherweise zwischen 0 und 4) sowie der Folgenglieder x (natrlich nur fr die Ausgabe, die Werte liegen zwischen 0 und 1), der Startwert x0 (ebenfalls zwischen 0 und 1), der Zeichenmodus (hoch oder quer), die Zahl der Iterationen vor dem Plotten der Punkte (z.B. 200) und die Zahl der Iterationen beim Plotten der Punkte (z.B. ebenfalls 200), wobei hier noch eine Schrittweite angegeben werden kann, d.h. die Zahl an Iterationen zwischen zwei Plots (normalerweise 1, d.h. man l„sst jeden Folgenwert zeichnen). Es gibt die blichen Interpolationstypen falls man mehrere Bilder berech- net. Ebenso stehen die blichen Hilfsfunktionen zur Parametereingabe zur Verfgung. 3 untersttzte Routinen Die Feigenbaumroutinen untersttzen nicht alle M”glichkeiten von CHAOS- ultd. Untersttzt werden die Anzeige der Parameter, die Anzeige von Bilde- rinfos (aber ohne eigenen Dialog fr Einzelbilder) und Blockroutinen. Nicht untersttzt wird die Funktion neu berechnen. Feigenbaum-Diagramme sind einfach nicht abwechslungsreich genug um diese Routinen auch noch zu implementieren, die Routinen sollten ursprnglich ja vor allem als Beispiel fr extere Routinen und deren Realisierung dienen. 55 Teil V die XCHAOS-Routinen, Barnsley und Attraktoren Die XCHAOS-Routinen erlauben es, neue Berechnungsroutinen zu realisie- ren, ohne dass man sich jedesmal mit den Dialogboxen zur Parametereingabe herumschlagen kann. Man kann einfach definieren, welche Parameter ge- braucht werden, und die XCHAOS-Routinen passen mit diesen Daten dann einen fr alle XCHAOS-Routinen gemeinsamen Eingabedialog an und ber- nehmen die Eingabe der Parameter. Konkret geschrieben werden muss fr den neuen Fraktal-Typ dann nur noch die eigentliche Berechnungsroutine, was natrlich sehr viel weniger Arbeit darstellt. Natrlich unterliegt man dabei ettlichen Einschr„nkungen, wieviele Parame- ter m”glich sind usw., dennoch stellen die XCHAOS-Routinen fr nicht zu komplizierte Fraktale eine elegante L”sung dar. Die Unterroutinen zum Modul XCHAOS werden allerdings nicht mehr extern nachgeladen, sondern sind integraler Bestandteil des Moduls, man kann hier also nicht mehr ausw„hlen, welche der Routinen man laden will, entweder man l„dt alle oder - durch Entfernen des Moduls XCHAOS - garkeine. Bisher habe ich zwei Bildtypen mit XCHAOS realisiert, Barnsley-Fractale mit denen ich die Routinen entwickelt habe und seltsame Attraktoren. Beide Bildtypen sind gewissermassen Ober-Typen fr mehrere Berechnungsformeln, die aber jeweils eng miteinander zusammenh„ngen. Bei der Parametereingabe hat man die blichen Hilfen, zus„tzlich existiert ein Popup-Men Voreinst., das verschiedene Voreinstellungen fr die linke Parameterh„lfte vorsieht. (Diese M”glichkeit wurde geschaffen, weil ich stets mehrere Bildtypen zusammengefasst habe, und die Grundbilder teilweise ver- schiedene Parameter ben”tigen, die so miteingestellt werden k”nnen. Wenn man also die Routinen ausprobieren will, schaltet man am besten mit die- sem Popup-Men zwischen den Bildtypen um, nicht direkt mit den dafr vorgesehenen Button.) Noch eine Anmerkung zu den Button: aus technischen Grnden werden alle Button stets wie Radio-Button darge- stellt (also mit Kreis), das heisst aber nicht automatisch, dass sie auch welche sind. Von den XCHAOS-Routinen werden die Funktionen von CHAOSultd un- tersttzt, mit Ausnahme des Neuberechnens von Bildern (kommt noch, ir- gendwann). 1 Barnsley-Fractale Die Formeln fr Barnsley-Fractale wurden aus dem PC-Programm Fractint entnommen, sie wurden von M. Barnsley entdeckt (oder erfunden, wie immer man will). CHAOSultd kennt vier verschiedene Barnsley-Fractale, eins mehr als Fractint, weil die Beschreibung und die Realisierung im Programm eines 1 BARNSLEY-FRACTALE 56 der Fractale in Fractint irgendwie nicht bereinstimmt (so ganz verstehe ich gerade auch nicht, was da eigenlich los ist, was ich berechne und was das mit der Berschreibung von Fractint zu tun hat; einerlei, die Routinen sind jetzt wie sie sind. CHAOSultd rechnet jedenfalls so wie unten angegeben). Von jeder dieser vier Varianten gibt es zwei Versionen: Mandelbrot- und Juliamengen. Generell entspricht die Berechnung der Bilder derjenigen von blichen Mandelbrot- und Juliamengen. Damit ist auch der Unterschied zwi- schen den beiden Versionen klar: bei Julia-Versionen gibt es eine globale, d.h. fr alle Punkte des Bildes gleiche Konstante c, die man in den Parame- tern angibt, bei den Mandelbrot-Versionen wird diese Konstante fr jeden Punkt mit dessen Koordinaten initialisiert. Dafr werden in der Mandelbrot- Version als Startwert fr die Iteration nicht die Koordinaten sondern die Parameter verwendet. Iteriert wird in den einzelnen Bildtypen (1-3 und I) wie folgt (zn und c sind komplexe Zahlen, mit 0 zn+1 = (