Ausblick auf Version 6.xx (oder was ich als n„chstes noch so vor habe): einige interne Bereinigungen Verbesserung der Anzeigefunktionen, insbesondere M”glichkeit zum Konvertieren von Bildern (Verkleinern bergrožer Bilder, Farbumsetzung, etc.) direkt in Anzeigefenstern (bei optimierten Konvertierungsroutinen) Hardcopy fr 24 Nadel Matrixdrucker Neu berechnen fr IFS-Bilder. Neue Berechnungsroutinen fr weitere Fraktal-Typen (???) Hilfs-System-Texte (Puh! that's a lot of work, so it will take some time) -------------------------------------------------------------------------------- Version 6.1 (15.10.1993) -------------------------------------------------------------------------------- ACHTUNG! die Schnittstelle zu den externen Routinen hat sich mal wieder ge„ndert CHAOSultdGEM 6.1 arbeitet nur mit den neuen *.XCH Dateien zusammen (und lehnt die Zusammenarbeit mit alten *.XCH-Routinen strikt ab) Fehler in letzter Minute: ========================= verwenden Sie bei der Auswahl von Dateien mittels Dateiselektor KEINE relativen Pfade, sondern nur vollst„ndige absolute Pfadangaben (also mit Laufwerk und vollst„ndigem Pfad). Andernfalls droht Absturz. korrigierte Fehler: ================== beim Holen von Daten mittels Block- oder Konstante-markieren wurde stets das Objekt Nummer 0 angegeben, nicht das, in dem man die Daten markierte. - fixed der Abbruch des Markierens eines Blockes mit der rechten Maustaste wurde nicht erkannt - fixed einige der Funktionen des Popupmens in Bilderfenstern konnten mit dem Popupmen nicht aufgerufen werden - fixed das Selektieren von Objekten mit der Tastatur hat (teils) nicht funktioniert, weil Menfunktionen (die nur ber den Ziffernblock anzu- sprechen sein sollten) erkannt wurden (im Neu-Men) - fixed die Dialogpositionen der IFS-Routinen wurden beim Speichern falsch konvertiert (genaugenommen garnicht) - fixed beim Erzeugen von Bildern mit Grau-Rastern (2x2 oder 4x4) wurde das Bild stets auf den Bildschirm ausgegeben, auch wenn eigentlich verdeckt berechnet werden sollte - fixed Fehler beim Laden von Bildern wurde versucht ein Bild zu laden, und es gab einen Fehler, bevor (intern) das Objekt fr diese Bild erzeugt wurde (z.B. weil die Datei, die man laden wollte ein falsches Extension hatte), dann wurde das (noch nicht erzeugte) Objekt wieder gel”scht, mit fatalen Folgen fr die Bildverwaltung - fixed (noch mal) Fehler beim Laden von IMG-Bildern wurde versucht, ein IMG-Bild zu Laden, das zus„tzliche Daten im Header (nicht XIMG-Informationen) enth„lt, so wurden diese Daten falsch berlesen, das Bild konnte nicht geladen werden - fixed Fehler beim Erzeugen eines neuen Objektes aus der Anzeige von Bl”cken/ Konstanten - fixed Žnderungen, Erg„nzungen und Verbesserungen: ========================================== Konstante anzeigen ------------------ Neu ist die Funktion 'Konstante zeigen', die die Positon einer mit den Fraktal-Parametern verbundenen Konstante (so vorhanden) anzeigt. (analog zum Block anzeigen). Bei Fraktalen wird die Konstante c, bei Hpfer der letzte gezeichnete Punkt, bei IFS (nichtlinear) ebenfalls die Konstante c angezeigt. Koordinaten anzeigen -------------------- In allen Anzeigefenstern, in denen Bl”cke markiert etc. werden k”nnen, kann man sich jetzt die Koordinaten der Punkte anzeigen lassen. Dazu existiert ein Menpunkt im Men und im Popupmen; nach dessen Aufruf werden die Raster und Fraktal-Koordinaten des Punktes unter dem Mauszeiger im Fenster-Titel angezeigt. Die Funktion wird durch Maus- oder Tastenklick oder den Aufruf einer Funktion beendet. W„hrend des Anzeigens der Koordinaten kann man durch Doppelklick ein Punktinfo aufrufen (wird bisher nur von Fractalen (2d) untersttzt). Blockfenster ------------ Auch aus Blockfenstern k”nnen jetzt Bl”cke ausgeschnitten werden, so als ob das Mutterobjekt (in dem die Bl”cke angezeigt werden) direkt angezeigt w„re. Das gleiche gilt fr Fenstern in denen Konstaten angezeigt werden. Blockfenster werden jetzt auch anders betitelt. In ihrem Titel wird der Name des Mutterbildes angezeigt, mit einem B wird auf des Block anzeigen verwiesen. (Konstate anzeigen: analog mit K). Neues Objekt ------------ Die M”glichkeit, ein neues Objekt aus dem angezeigten Bild zu erzeugen, gibt es jetzt auch fr angezeigte Objekte (bisher nur fr angezeigte Bl”cke, Vergleiche etc.). Bei einfach angezeigten Objeken wird dann das angezeigte Bild (also insbesondere mit der Zahl der Bildebenen des Desktops) in das Objekt bernommen (die Routine existiert im Vorgriff auf sp„tere M”glichkeiten, Bilder direkt in der Anzeige zu skalieren oder konvertieren). Neu berechnen, Block erzeugen ... --------------------------------- Fr 'Neu berechnen' fr ein Bild, sowie das Ausschneiden eines Blockes oder das šbernehmen eines Punktes aus einem Bild gibt es neue zus„tzliche M”glichkeiten. 'Neu berechnen' war bisher stets nur ber die speziellen Dialoge fr das neu berechnen von Bildern m”glich. Jetzt kann man die Funktion fr EIN Bild auch so aufrufen, daž die normalen Dialoge zum neu erzeugen von Fraktalen aufgerufen werden, indem man den Menpunkt 'neu berechnen' mit gedrckter CTRL-Taste aufruft. Es werden dann die Dialoge fr die allgemeinen Parameter und die Fraktalparameter des betreffenden Fraktal- types aufgerufen, wobei allerdings nicht die bliche Voreinstellung vor- genommen wird, sondern die Parameter des Bildes mit dem man die Funktion aufruft. Das zu erzeugende Bild wird dann in jedem Fall zus„tzlich erzeugt, ein berschreiben (wie bei der Funktion neu berechnen sonst m”glich) gibt es nicht. Analog kann ein Block ausgeschnitten werden, indem man in einem (geeigneten) Anzeigefenster mit (anfangs) gedrckter CTRL-Taste einen Rahmen aufzieht (SHIFT erlaubt freies Seitenverh„ltnis, ansonsten wird das Verh„ltnis des Bildes beibehalten). Anschliežend werden die Dialoge fr das Berechnen von Bildern mit diesen Voreinstellungen aufgerufen. Eine Konstante kann man durch CTRL-Doppelklick in ein geeignetes Fenster vorgeben. (Bisher konnte man diese Funktionen natrlich auch erreichen, mužte aber immer (wom”glich mehrfach) die Daten-holen Funktion aufrufen). Die Funktion wird von allen Berechnungsroutinen unterstzt, auch von denen, die eigentlich kein 'Neu berechnen' unterstzen. Wie beim Holen von Daten, wird in einigen Berechnungsroutinen zwischen dem šbernehmen aller und nur bestimmter Daten unterschieden. Alle Daten werden dann nur bernommen, wenn man die SHIFT-Taste drckt, und zwar entweder beim Aufruf der Funktion (direkt vor Erscheinen der Dialogbox zum Einstellen der allgemeinen Parameter ODER direkt danach). Weiter berechnen von Bildern ---------------------------- Beim weiter-berechnen von Bildern wird jetzt der bisher berechnete Teil angezeigt (es sei denn, der Speicher reicht nicht, dann entf„llt die Anzeige OHNE Fehlermeldung). Bei bergrožen Bildern, die zeilenweise berechnet werden (wie etwa Fractale), wird der beim Berechnen angezeigte Ausschnitt bei weiter nach unten verschoben (so daž das bisher berechnete nicht oder nur teilweise sichtbar ist, dafr aber mehr vom neu berechneten). Eine Verschiebung des angezeigten Ausschnittes beim Berechnen selbst findet aber NICHT statt. Konvertieren ------------ Den Meneintrag 'konvertieren' gibt es ja schon l„nger. Jetzt gibt es auch eine Funktion dazu, mit der man - Bilder vergr”žern oder verkleinern (skalieren) - Farbbilder in monochrome Bilder (eventuell mit Graurastern) wandeln (konvertieren) kann. Die Funktion wirkt auf beliebige Bildobjekte, das Ergebnis wird in neuen Bild-Objekten abgelegt. Skalieren: Man kann Bilder um einen Faktor 2 vergr”žern (gemeint ist die Seitenl„nge), oder um Faktoren 1/2, 1/4 oder 1/8 verkleinern. Konvertieren: Zum Konvertieren steht einerseits ein Fehler-Diffusions-Algorithmus, der auch Grauraster zul„žt, andererseits ein Dithering-Alogrithmus zur Verfgung (am besten ausprobieren, die folgenden Erl„uterungen gehen NICHT auf die einzelnen Algorithmen ein). 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 daž man direkt in Grauraster bersetzen lassen kann), und ob Grauraster verwendet werden sollen (dann wird das Bild dadurch nochmals vergr”žert!). 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 weiž weiž, im letzten Fall wird die dunkelste Farbe des Quellbildes zu schwarz (auch wenn sie grau ist), die hellste zu weiž. Dadurch werden zwar die Farben verf„lscht, dafr ist der Kontrast im Ergebnis besser. Der Dithering-Algorithmus (orderd dither) stellt keine weiteren Optionen zur Verfgung. Die Umsetzung der Farbe muž noch fr beide Algorithmen angegeben werden. Im RGB-Modus gehen der Rot-, Grn- und Blau-Anteil gewichtet ein, im HLS-Modus wird die Lightness verwendet (Achtung, kann leicht fr verschiedene Farben gleich sein). W„hlt man Ignorieren der Farbpalette, so werden den Farben einfach ein Graukeil zugeordent, von Schwarz fr Farbe 0 bis Weiž 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 Konvertierung von angezeigten Bildern gedacht). W„hlt man sie an, so wird NICHT Konvertiert. Beim Konvertieren der Bilder werden diese zuerst skaliert, dann konvertiert. ACHTUNG! Insbesondere das Konvertieren kann recht lange dauern (Minuten). Die M”glichkeit des Abbrechens mit 'ESC' ist nur nach dem Ende des Konvertieren eines Bildes m”glich, falls man mehrere Bilder konvertieren l„žt (analog etwa zum Packen oder Laden). Aufruf von Funktionen, Mens etc. --------------------------------- Neu ist das Popupmen in Anzeigefenstern fr Block, Konstante oder Bildvergleich. Der Meneintrag 'L”schen' wurde ins 'Extra'-Men verlegt. Einige Eintr„ge sind im Zeigen Men hinzugekommen (z.B. Farbe, Konstante...) ACHTUNG: die Anzeige-Optionen werden jetzt mit CTRL-O aufgerufen (vom Desktop aus), nicht mehr mit O. O dient jetzt zum Erzeugen eines neuen Objektes aus dem angezeigten Bild. Die Bezugnahme auf die Objekte wurde nochmal ge„ndert. Bei Funktionen, die sich generell nur auf bestimmte Bilder beziehen (wie etwa 'neu' (nur auf Fractale), 'weiter' nur auf unfertige Bilder etc.), wurden bisher alle solchen Bilder angesprochen, wenn kein SOLCHES Bild selektiert war (bei 'weiter' konnte also ein fertiges Bild selektiert sein, die Funktion bezog sich auf alle (unfertigen) Objekte). Da sich dieses Verhalten doch als etwas iritierend herausstellte, gilt ab Version 6.1, daž sich solche Funktionen auf alle Bilder nur dann beziehen, wenn gar keine Objekte selektiert sind, sonst auf die selektierten (es sei denn, man drckt die SHIFT-Taste bei der Menauswahl, und w„hlt so explizit die Wirkung auf alle Objekte; eben wegen dieser M”glichkeit sind bei selektierten Objekten gelegentlich Menaufrufe m”glich, die sich dann auf gar keine Objekte beziehen, weil keine passenden Objekte selektiert sind; in diesem Fall wird die Funktion OHNE FEHLERMELDUNG abgebrochen). HiHiHilfe! ---------- Ein kontextsensitives Hilfs-System wurde begonnen, allerdings liegen fast alle Hilfs-Texte bisher nur als Dummy-Texte vor. Hilfs-Seiten existieren zu den Mens, (fast) jeder Dialogbox usw.. Der 'Keine Panik'- Text wurde zu einem Men, man die Hilfs-Seiten zu den Mens aufrufen kann, in den Dialogboxen gibt es einen 'Hilfe'-Button (bei Platzmangel auch nur 'H', gew”hnlich links unten), der auch ber die HELP-Taste erreichbar ist. Sonstiges --------- Im Fractal Berechnungs-Info werden jetzt zus„tzlich mittlere Werte (pro Bild und pro Punkt) angezeigt Beim Laden des Clipboards wird jetzt erst berprft, ob eine Datei (genauer eine Bild-Datei) vorhanden ist. Ist dies nicht der Fall, so wird eine Fehlermeldung ausgegeben. Fr 2x2 und 4x4 Raster wurden neue Punktsetz-Routinen geschrieben, die jetzt auch im šberschreibe-Modus, wo auch Pixel gel”scht werden korrekt arbeiten (genaugenommen eine Fehlerkorrektur). Bildvergleich wurde berarbeitet und arbeitet jetzt mit der Bildtiefe (Zahl der Bitmaps) des 'tiefsten' Bildes. Im Titel des Farbselektors wird darauf hingewiesen, wofr man den Farbselektor aufgerufen hat. Die Anzeige wurde intern berarbeitet. Abgesehen davon, daž jetzt mehr Speicher fr das angezeigte Objekt ben”tigt wird, ergibt sich bisher nur ein Vorteil am Rand. Beim Anzeigen von Bildern auf dem ganzen Bildschirm im kontinuierlichen Betrieb traten bisher immer wieder Garbage-Collection's der Speicherverwaltung auf, die zu zeitlichen Verz”gerungen fhrten. Dies passiert jetzt nicht mehr. (allerdings schon noch im 'Warten auf Taste'-Modus) -------------------------------------------------------------------------------- Version 6.01 (21.8.1993) -------------------------------------------------------------------------------- Kurz nachdem ich die Version 6.00 via FTP-Server ”ffentlich zug„nglich gemacht habe, mužte ich leider doch einige (teils schwere) Fehler feststellen - sorry. Deshalb hier schon das erste Update, die Version V6.01. Ich hoffe, es gibt diesmal keine solchen Probleme mehr. Gleichzeitig wurden einige neue Funktionen realisiert, und ein paar Dinge ge„ndert (s.u.) Korrigierte Fehler gegenber Version 6.00: Fehler in den Barnsley-Routinen bei Verwendung der Modi M1, MI und M2 strzte das Programm ab - fixed Fehler beim Laden von Bildern wurde versucht ein Bild zu laden, und es gab einen Fehler, bevor (intern) das Objekt fr diese Bild erzeugt wurde (z.B. weil die Datei, die man laden wollte ein falsches Extension hatte), dann wurde das (noch nicht erzeugte) Objekt wieder gel”scht, mit fatalen Folgen fr die Bildverwaltung - fixed Fehler in 'neu berechnen' einige kleinere (und mittlere) Unstimmigkeiten, Probleme beim Neuberechnen von bestimmten Bildtypen falls nur allgemeinen Parameter ge„ndert wurden ... - fixed, 'neu berechnen' sollte jetzt korrekt arbeiten, fr einige Bildtypen (IFS-Kopierer) ist KEIN neu berechnen m”glich Fehler beim Anzeigen von Bildern der Rahmen wurde links und oben ein Pixel zu breit gezeichnet, was bei kontinuierlicher Anzeige zu Flackern fhren konnte - fixed Fehler beim Fenster-Redraw nach weiterberechnen wurde ein Bild weiterberechnet, das in MEHREREN Fenstern angezeigt wurde, so wurde dieses Bild nur im ersten dieser Fenster neu geladen und korrekt angezeigt, in den anderen Bildern wurde Pixel-Schrott anstelle der neuberechneten Zeilen angezeigt - fixed Fehler im Programm-Info die zweite Seite (zweite Dialogbox) des Info-Dialoges konnte nur mittels Tastatur bedient werden - fixed Fehler in den XCHAOS-Routinen bei den XCHAOS-Routinen hatte ich die M”glichkeit zum Voreinstellen der Parameter schlicht vergessen - fixed Fehler in den Attraktor-Routinen Text-Strings der Parameter teilweise zu lang - fixed Fehler in der Anleitung in der Dateiliste wird das Archiv mit der Anleitung im Postscript-Format als CHS_ULTD.TOS bezeichnet. Stimmt nicht, die Datei heižt DOC_PS.TOS, soviel Phantasie sollte man natrlich schon haben, sie trotzdem zu finden. Was die Dateiliste der zu kopierenden Dateien angeht, diese Datei CHANGES.TXT wird zwar nicht aufgefhrt, ist aber trotzdem zu kopieren. Der Stuttgarter (FTP) Dateiserver scheint etwas langsam zu sein, was die Aufnahme neuer Programme angeht, oder der Betreuer hat CHAOSultd nicht haben wollen (ich habe das Programm jedenfalls noch nicht finden k”nnen). Auf alle F„lle werden neue Versionen in Clausthal zu finden sein - besonderern Dank an Wolfgang Ley, den dortigen Betreuer des Servers. Weitere Fehler in der Anleitung ergeben sich insofern, als sie die folgenden Žnderungen und Erg„nzungen des Programmes NICHT bercksichtigt: Žnderungen und Erg„nzungen: Scrollen bei der Ganzseitendarstellung bergrožer Bilder ist jetzt m”glich - via Tastatur. Und zwar mit Cursor up/down/left/right um je 16 Pixel, mit Shift-Cursor ... um je eine Bildschirmbreite/h”he, und mit Ctrl-Cursor ... an den oberen/unteren/linken/rechten Rand. Mit Insert kann man das Bild zentrieren, mit Clr/Home die linke obere Ecke einstellen. Die M”glichkeit Ctrl-Cursor gibt es neu auch in Bild(er)fenstern. Wird ein neues Bild dargestellt, so wird dieses zun„chst wie bisher zentriert. 'neu berechnen' fr XCHAOS-Routinen Die Einstellungen wurden erweitert. Jetzt werden auch Fensterpositonen gespeichert. Fenster- und Dialogpositionen werden bei Aufl”sungswechsel angepažt, dabei wird sichergestellt, daž die Fenster und Dialogpositionen nur innerhalb des Bildschirms dargestellt werden Des weiteren werden jetzt fr jeden Bildtyp voreinstellungen fr die allgemeinen Parameter verwaltet. Beim Einstellen der Voreinstellungen wird deshalb auch zuerst der Eingabe-Dialog fr die allgemeinen Parameter aufgerufen. Im Zuge der Žnderungen an den Einstellungen wurde das Format der Einstellungen ge„ndert (zusatzlicher Magic-Value im Header der Datenbl”cke); man kann deshalb alte Einstellungsdateien NICHT mehr verwenden. Ebenso hat sich die Definition der Schnittstelle fr die Module ge„ndert, so daž auch hier die neuen Module hergenommen werden mssen. Einige Funktionen (wie etwa Block anzeigen) bezogen sich bisher immer auf die selektierten Bilder, w„rend an sonsten die Regel gilt, daž sich Funktionen auf die selektierten Bilder beziehen und auf alle Bilder, falls keine Bilder selektiert sind. Um dies zu vereinheitlichen beziehen sich ab V6.01 alle Funktionen auf alle selektierten bzw. alle Bilder. Allerdings kann es jetzt vorkommen, daž man die Funktionen 'Block zeigen' und 'Bildvergleich' auch bei einem selektiertem Bild aufrufen kann, obwohl sie fr ein Bild natrlich nicht sinnvoll sind (der Menpunkt kann nicht gesperrt werden, weil er ja mit SHIFT-Klick fr alle Bilder aufgerufen werden kann). In diesem Fall reagiert die Funktion einfach nicht. Diese Žnderung betrifft des weiteren die Funktionen 'speichere Clipboard', 'zeige Bildparameter' und 'zeige Fractal-Parameter'. Besonders in der Farbversion kann die Einstellung der Farben eines Bildes beim Anzeigen in einem Fenster, die ja den ganzen Bildschirm betrifft, l„stig sein, wenn man Dialogboxen oder auch das Men nicht mehr richtig sehen kann. Deshalb gibt es jetzt (einstellbar) zwei M”glichkeiten, die Farben automatisch auf die Desktop-Farben zurck- setzen zu lassen, n„mlich entweder immer dann, wenn eine Dialogbox (oder Alert-Box) aufgerufen wird, oder (zus„tzlich) immer dann, wenn der Mauszeiger den Arbeitsbereich des aktiven Fensters verl„žt.