AMAZE

NAME
ÜBERSICHT
KONFIGURATION
BESCHREIBUNG
OPTIONEN
RÜCKWERT
FEHLER
UMWELT
DATEIEN
VERSIONEN
GEMÄSS
BEMERKUNGEN
FEHLER
BEISPIEL
AUTOREN
SEE  AUCH

NAME

amaze - GUI zum Erzeugen und Drucken von Labyrinthen

ÜBERSICHT

amaze [−x Spalten] [−y Zeilen] [−wall Wanddicke] [−path Wegbreite] [−stay Zahl] [−cuts Zahl] [−s] [−creep ms] [−option
... ]

KONFIGURATION

Die Einstellungen, z.B. die Farben, können in der GUI verändert werden. Um herauszufinden, wo sie zwischendurch gespeichert werden, benutze: amaze -init
Um die Originaleinstellungen wieder zu erhalten, ohne Rücksicht auf die gespeicherten Einstellungen, verwenden Sie die -no-restore Option.

BESCHREIBUNG

amaze ist eine grafische Anwendung um einfache Labyrinthe zu erzeugen und zu drucken. Die Labyrinthmerkmale (Größe und Aussehen) können mit dem GUI gewählt werden, oder vorausbestimmt auf der Kommandozeile.

Terminologie
Ein Labyrinth besteht für uns aus einem Raster von Fliesen, und eine Reihe von Wände zwischen den Fliesen. Zwischen jeweils zwei benachbarten Fliesen gibt es entweder eine Wand oder keine, und wenn es keine gibt, dann sind die beiden Fliesen zum Durchlaufen verbunden. Wenn eine Fliese A mit Fliese B verbunden ist, und diese B mit C, dann sind A und C ebenfalls (indirekt, über B) verbunden. Wir nennen diese Fliesenreihenfolge A-B-C ein Pfad von A nach C. Jedes Labyrinth hat eine Abfahrt-Fliese und Ankunft-Fliese; der Pfad zwischen diesen beiden Fliesen wird die Lösung des Labyrinths genannt (es kann nur einen solchen Weg geben). Die Freude und Herausforderung eines Labyrinths bestehen traditionell daraus, das Lösungspfad durch das Labyrinth zu finden.

Aktionen
Die grafische Oberfläche zeigt eine Schaltfläche um den Labyrinthbau zu steuern, und ein Labyrinth. Das Labyrinth wird zufällig generiert, jedes Mal wenn Sie das die Labyrinthrastermaße ändern (siehe "Breite" und "Höhe"-Steuerelemente), oder wann immer Sie den Datei >  Neu Menüpunkt benutzen. Mit Bearbeiten >  Zeig  Pfad wählen Sie ob die Lösung (der "Brotkrümmelspur", frei nach Grimm) durch das Labyrinth nicht oder doch auf dem Bildschirm angezeigt wird. Jedes Mal, wenn Sie es einschalten, wechselt der Anzeigemodus zwischen stationär und animiert ("schleichend" durch das Labyrinth). Siehe auch Option -creep. Wenn Sie das Labyrinth drucken (mit Datei > Druck ...) werden zwei Seiten produziert: zunächst das Labyrinth ohne die Lösungsangabe, und dann das Labyrinth mit einer gestrichelten Linie um die Lösung zu zeigen.

Grundriß
Sie können ein Grundrißbild (auch bekannt als "Maske") eingeben, um den Umriß des Labyrinths zu definieren. Standardmäßig wird das Labyrinth den ganzen rechteckigen Raster von verfügbaren Fliesen füllen. Eine Maske besteht aus einem Bild und einer "toten" Farbe. Derzeit ist die Tote Farbe die des (0,0) Punktes im Bild. Jedes Bildpunkt in der Maske mit dieser Farbe wird als totes Punkt gedeutet. Wenn Sie eine Maske definieren, wird es gedehnt um das Fliesenraster abzudecken; danach wird jede Fliese, deres Mittelpunkt einem toten Bildpunkt in der Maske entspricht, aus dem Labyrinth ausgeschlossen. Also, wenn die Maske ein Bild einer Katze auf einem (einfarbigen) weißen Hintergrund ist, wird das Labyrinth die Form einer Katze haben. Sie können das Grundrißbild mit Datei > Grundriß öffnen laden, oder ziehen Sie einfach ein Bild auf die Leinwand (muß eine lokale Datei entsprechen).

Hinweis
Intern ist das Labyrinth als eine Reihe von Zellen vertreten. Für quadratische und dreieckige Fliesen, entspricht einer Fliese eine Zelle, für sechseckige Fliesen ist jede Fliese zwei Zellen groß; für achteckige, ein oder drei. Einige Hinweise in der Dokumentation dürften unklar sein, wenn Sie sich diesem Unterschied nicht bewußt seien.

Die Version von amaze für MS Windows läuft wie eine reine GUI-Anwendung, ohne ein angeschlossenes Konsole-Fenster. Dies bedeutet, daß es keine "Standard-Ausgabe" gibt, also wenn Sie z.B. das Ergebnis von -init wissen wollen, müssen Sie die -out Option auf der Kommandozeile vorhergehen lassen.

OPTIONEN

-x Spalten

gibt die Anzahl der Spalten von Fliesen im Labyrinth. Sie können diese später einfach in der GUI ändern unter Verwendung der "Breite"-Zähler oder -Schieberegler.

-y Zeilen

gibt die Anzahl der Zeilen von Fliesen im Labyrinth. Sie können diese später einfach in der GUI ändern unter Verwendung der "Breite"-Zähler oder -Schieberegler.

-p/-path Bildpunkte

gibt die gewünschte Breite, in Bildpunkten, des Lösungspfades durch das Labyrinth, falls es in der GUI angezeigt wird (siehe Option −s). Sie können diese später einfach in der GUI ändern unter Verwendung der "Pfad"-Zähler oder -Schieberegler. Wenn das Fenster zu klein ist, kann das Pfad schmaler gezeichnet werden.

−wall Bildpunkte

gibt die gewünschte Breite, in Bildpunkten, der Wände im Labyrinth. Sie können diese später einfach in der GUI ändern unter Verwendung der "Wand"-Zähler oder -Schieberegler. Wenn das Display zu klein ist, können die Wände schmaler gezeichnet werden.

−stay Faktor

bestimmt, wie lange die einzelnen Schritte in das Labyrinth versuchen geradeaus zu gehen. Auf 1 gestellt, ist die Richtung völlig zufällig; auf N ist die Chance 1 auf N daß willkürlich gewählt wird statt geradeaus. Beachten Sie, daß völlig zufällige Labyrinthe zu vergleichsweise langen Lösungpfaden neigen.

−cuts Zahl

versucht bis an die angegebene Anzahl von zusätzlichen Querschnitte zwischen benachbarten Zellen abseits vom Pfad hinzufügen. Null Schnitte bedeutet daß das Labyrinth keine Schleifen im Wege hat, und nicht-Null bedeutet, daß einige Wände nicht mit der Außenmauer verbunden sind. Die Zahl ist eine Obergrenze, das Labyrinth kann am Ende weniger Schnitte erhalten.

−tile Form

gibt die Form der Labyrinthfliesen: "triangle" (Dreieck), "square" (Rechteck), "hexagon" (Sechseck), oder "octagon" (Achteck).

−mask Datei

wird das Bild in der Datei verwenden, um ein Teil des Fliesenrasters zu maskieren mit der Farbe des (0,0) Bildpunkts als "toter" Farbe. Also, wenn Sie ein Bild einer Gestalt auf einem monochromen Hintergrund haben, erhalten Sie ein Labyrinth in der gleichen Form. Sonderfälle für Datei sind [total] (ohne Maske), [round] (eingebaute Kreisform), und [heart] (zum Valentinstag). Wenn Sie unbedingt eine Datei mit einem Namen der wörtlich mit "[" anfängt verwenden müssen, fügen Sie vor dem Namen den Präfix [image] ein.

−path-color Farbe

bestimmt die Lösungspfadfarbe. Eine detaillierte Diskussion der Farbnamen finden Sie in http://doc.qt.nokia.com/4.7/- qcolor.html#setNamedColor . Beispiele: "steelblue", "#112233".

−tile-color Farbe

bestimmt die Fliesenfarbe. Vgl. Option −path-color.

−text-color Farbe

bestimmt die Farbe des Nachrichttexts. Vgl. Option −path-color.

−text Text

bestimmt den Nachrichttext. Die Nachricht wird verteilt über dem Lösungspfad gezeigt (eine Buchstabe je Fliese, mit willkürlichen Zwischenräumen), so daß das Auffinden der Lösung einem gleichzeitig das Lesen der Nachricht ermöglicht.

−wall-color Farbe

bestimmt die Wandfarbe im Labyrinth. Vgl. Option −tile-color.

−do-show

−s

zeigt das Lösungspfad als gepunktete Linie in dem Labyrinth in der GUI.

−cover 0-100

bestimmt welcher Prozentsatz vom Pfad während der Animierung am höchsten gleichzeitig gezeigt wird. Das Pfad wächst vom Abfahrtspunkt aus, mit der Schrittgröße (sehe Option −steps). Sobald dieser Prozentsatz erreicht ist, fängt das Hintere an im selben Takt richtung Ankunfstpunkt zu schrumpfen.

−creep ms

gibt das Intervall (in Millisekunden) zwischen Schritte der Pfadanimation. Wenn der Wert gleich Null ist, wird das Pfad überhaupt nicht animiert werden.

−steps Zahl

wird das Pfad in dieser Zahl von Schritten von Abfaht bis Ankunft animieren. Die effektive Schrittgröße wird mindestens eine Zelle betragen.

−out Pfad

leitet die Standard-Normalausgabe in die angegebene Datei um. Unter MS Windows müssen Sie diese an einen beliebigen Ausgang von z.B. erhalten −help oder −init.

−err Pfad

leitet die Standard-Fehlerausgabe in die angegebene Datei um. Unter MS Windows brauchen Sie diese Option um nicht-GUI-Fehlermeldungen zu erhalten.

−std Pfad

leitet die Standard-Normal- und -Fehlerausgabe zusammen um in die angegebene Datei. Die beiden Standard-Ausgaben stattdessen separat auf dieselbe Datei umlegen funktioniert nicht; die zweite wird die erste ersetzen.

−locale Gebietsschema

wählt explizit die in den GUI-Texten verwendete Sprache. Derzeit (teilweise) unterstützt: "da", "de" (= Deutsch), "en_GB", "en_US", "eo", "es", "fr", "nl", und "zh_CN".

−mini

schrumpft Sie die Benutzeroberfläche um auf einem kleineren Bildschirm zu passen. Mit diesem können Sie amaze bis zu etwa 320×200 Bildpunkte effektiv nutzen.

−do-splash

zeigt ein Begrüßungsbild beim Starten.

−no-splash

zeigt kein Begrüßungsbild beim Starten.

−no-restore

ignoriert alle gespeicherten Einstellungen, und nimmt Rückgriff auf die eingebaute Standardwerte.

−no-retain

wird die geänderte Einstellungen nicht speichern.

−init

druckt den Pfad der Datei, in der die Einstellungen gespeichert werden.

Allgemeine Qt-Optionen
Diese werden von den verwendeten Qt-Widget 4.7 Bibliotheken verarbeitet.
−style= 
Stil
−style 
Stil

Stil legt die Anwendung GUI-Stil. Mögliche Werte sind motif, windows, und platinum.

−stylesheet= Stilblatt
−stylesheet 
Stilblatt

bestimmt das Stilblatt der Anwendung. Der Wert muss ein Pfad zu einer Datei sein die das Stilblatt enthält. Hinweis: Relative URLs in der Stilblattdatei sind bezogen auf dem Stilblattdatei- pfad.

−session= Sitzung
−session 
Sitzung

greift zurück auf die Anwendungseinstellungen einer früheren Sitzung.

−widgetcount

druckt am Ende eine Debug-Meldung über die Anzahl der unzerstörten Widgets und die maximale Anzahl an je gleichzeitig existierende Widgets.

−reverse

schaltet die Layout-Richtung der Anwendung auf Qt:: RightToLeft

−graphicssystem

bestimmt welches Hintergrundsystem für Bildschirm-Widgets und QPixmaps verwendet wird. Verfügbare Optionen sind raster und opengl.

−nograb

sagt Qt, daß es niemals die Maus oder die Tastatur vorgreifen soll. (nur Qt mit QT_DEBUG.)

−dograb

während einem Debugger-Sitzung kann ein implizites −nograb ergeben, verwenden Sie −dograb um dies zu vermeiden. (Nur Qt mit QT_DEBUG, nur unter X11.)

−sync

schaltet auf synchronem Modus für die Fehlersuche. Siehe Debugverfahren für eine ausführlichere Erklärung. (Nur Qt mit QT_DEBUG nur, nur unter X11.)

−direct3d

wird die Direct3D-Mahler verwenden als Standard Widget-Mahler in Qt. Diese Funktionalität ist experimentell. (Nur auf Microsoft Windows).

Allgemeine X11-Optionen
Die X11-Version von Qt unterstützt einige traditionelle X11-Kommando- zeilenoptionen.
−display 
Anzeige

gibt die X-Anzeige (Standard ist $DISPLAY).

−geometry Geometrie

bestimmt die Geometrie des Clients vom dem ersten Fenster, das angezeigt wird.

−fn Font
−font 
Font

definiert die Anwendungsschriftart. Die Schrift sollte als X-Schriftart-Beschreibung gegeben werden.

−bg Farbe
−background 
Farbe

legt die Standard-Hintergrundfarbe und eine Anwendungspalette fest (helle und dunkle Farbtöne werden berechnet).

−fg Farbe
−foreground 
Farbe

wird die Standard-Vordergrundfarbe.

−btn Farbe
−button 
Farbe

wird die Standard-Schaltfläche Farbe.

−name Name

wird der Name der Anwendung.

−title Titel

wird der Titel der Anwendung.

−visualTrueColor

zwingt der Anwendung auf einem 8-Bit-Display eine TrueColor-Darstellung zu verwenden.

−ncols Zahl

begrenzt die Anzahl der zugewiesenen Farben im Farbwürfel auf einem 8-Bit-Schirm, falls die Anwendung die QApplication::ManyColor Farbspezifikation verwendet. Wenn die Zahl 216 lautet, dann wird ein 6×6×6-Farbwürfel verwendet (dh 6 Rot-, 6 Grün und 6 Blau-Stufen); für andere Werte wird ein Würfel annähernd proportional zu einem 2×3×1 Würfel verwendet.

−cmap

läßt die Anwendung auf einem 8-Bit-Schirm ein privates Farbroster installieren.

−im

wählt den Eingabemethode-Server (entspricht dem Festlegen der XMODIFIERS Umgebungsvariable).

−inputstyle

definiert, wie die Eingabe in das gegebene Widget eingefügt wird, z.B. läßt onTheSpot die Eingabe direkt im Widget erscheinen, während overTheSpot die Eingabe in einem über das Widget schwebenden Feld zeigt und sie erst dann eingefügt, wenn die Bearbeitung zu Ende ist.

RÜCKWERT

Amaze ergibt einen Rückwert ungleich Null nur bei einem fatalen internen Fehler oder ungültiger Kommandozeile.

FEHLER

Befehlszeilenargumentfehler werden auf der Standard-Fehlerausgabe gemeldet. Fehler bei der GUI-Verwendung werden in der Regel mit übersetzten, vorgeschobenen Dialogfenstern angezeigt.

UMWELT

Umgebungsvariablen werden nicht verwendet um dieses Programms zu konfigurieren. Die eingebundenen Bibliotheken (für Qt und X11 unter Linux) können eigene Umgebungsvariablenabhängigkeiten vorweisen.

DATEIEN

Bitte beachten Sie daß die hier gegebenen Dateipfade für Ubuntu gelten, und auf anderen Plattformen unterschiedlich sein können.

/usr/share/amaze/*.qm

− Die Qt Lokalisierungsdateien

/usr/share/applications/amaze.desktop
/usr/share/app-install/desktop/amaze.desktop

− Für die Desktop-Menüs

/usr/share/doc/amaze/*

− Urheberrecht u.s.w.

/usr/share/icons/hicolor/*x*/apps/amaze.png

− Desktop-Anwendung und Menü-Icons

/usr/share/man/de/man1/amaze.1.gz

− Diese Handbuchseite

/usr/bin/amaze

− Die ausführbare Datei

$HOME/.config/Morgul/amaze.conf

− Speichert die Einstellungen zwischen den Läufen für diesen Benutzer

http://qtamaze.sourceforge.net/version.html

− Wenn die Update-Prüfung sieht für die aktuelle Version und die Release-Nummer

Siehe Option -init für die system- und benutzerspezifische Datei verwendet um die Einstellungen zwischen Sitzungen zu speichern.

VERSIONEN

Dies ist die dritte Version, 1.2. (Die erste Version, 1.0, ist mittlerweile veraltet.) Es steht auf http://qtamaze.sourceforge.net als Quelle (mittels CVS) zur Verfügung, als Ubuntu/Debian-Paket, und als Windows XP MSI-Datei.

GEMÄSS

Amaze versucht, die GUI-Richtlinien und Qt-Muster in der Qt-Dokumentation 4.5-4.7 zu folgen, sowie die Leitlinien für die Gnome ". Desktop"-Datei und die WiX Empfehlungen für den MSI-Installer.

BEMERKUNGEN

Die Erzeugung von Labyrinthe ist nicht gerade ein neues oder herausforderndes Thema für sich, sondern macht mir Spaß genug, um als Gegenstand eines Projekts zu verwenden.

Für weitere Informationen über offene Fragen und Veränderungen, besuchen Sie die Projekt-Tracker bei http://qtamaze.sourceforge.net/, oder holen Sie sich die Quellen über CVS und schauen Sie die amaze/TODO Datei an.

Zu Tun
− Wir zwingen das Labyrinth in den Anzeigebereich zu passen. Das macht es einfach die Größe zu ändern, beschränkt die Benutzer aber darauf nur Labyrinthe zu machen, die auf dem Bildschirm passen.
− Diese Handbuch-Seite ist nur Teil des Ubuntu-Pakets, für die Windows MSI sollten wir ein PDF mitliefern.

Lokalisierung
− Ich habe die Lokalisierung für [da], [de], [eo], [es], [nl], [zh_CN] teilweise angefangen, bin mir aber sicher, daß die Übersetzungen nicht alle stimmen, insoweit sie überhaupt vorliegen.
− Die nicht-"Kommentar" Einträge in der Datei amaze.desktop wurden noch nicht lokalisiert. Das Gleiche gilt für den Text der gedruckten "-help"-Option.

Ausgabe-Format
− Wir unterstützen Pfad-Animation z.Z. nur auf dem Bildschirm, aber nicht in den Export-Formaten, also z.B. kein animiertes GIF.

Konfiguration
− Heute hat der Benutzer keine Kontrolle über den Punkt und Strich-Muster des Lösungspfades.

FEHLER

− "Datei > Exportieren" ist ein wenig komisch: es hat keinen "Alle Dateien (*.*)" Filter, es schließt eine transparente Rand mit ein wenn die Fensterfläche größer als das Labyrinthbild ist, und könnte ansonsten besser gestaltet werden.
− "Datei > Blender", "Datei > Maya" und "Datei > Virtual" sind experimentell und nicht ganz vollständig; sie exportieren je nachdem ein Blender Python-Skript, ein Maya MEL-Skript und eine X3D/VRML Datei. Diese mangeln Fliesenböden, zeigen das Lösungspfad nicht, und für MEL werden Sie die Farben vermissen.
− Der Leerraum im Fenster wird in exportierten Bildern mitgespeichert, statt sauber auf nur das eigentliche Bild zugeschnitten zu werden.
− Wenn Sie den Ausgangspunkt direkt neben dem Ankunftspunkt auswählen, kann es sein, daß das Lösungspfad überhaupt nicht das Labyrinth durchläuft. Wenn sie auf entgegengesetzten Seiten der gleichen Ecke liegen, kann die Ecke unsichtbar erscheinen, weil sie keine Außenwände hat.
− Ein Labyrinth mit nur einer Spalte oder einer Zeile von Fliesen kann sich seltsam herausstellen.
− Weitere Fehler und Unvollkommenheiten finden Sie beschrieben in den Fehlermeldungen und Verbesserungsorschlägen auf http://sourceforge.net/p/qtamaze/_list/tickets.

BEISPIEL

amaze −no-splash −s

AUTOREN

tinco bei SourceForge

SEE  AUCH

xlaby (1).