AMAZE

NAAM
SYNOPSIS
INSTELLING
BESCHRIJVING
OPTIES
EINDSTATUS
FOUTEN
OMGEVING
BESTANDEN
VERSIES
VOLGENS
OPMERKINGEN
GEBREKEN
VOORBEELD
AUTEURS
ZIE OOK

NAAM

amaze − GUI om doolhoven te genereren en af te drukken

SYNOPSIS

amaze [−x kolommen] [−y rijen] [−wall muurbreedte] [−path padbreedte] [−stay aantal] [−cuts aantal] [−s] [−creep ms] [−optie
... ]

INSTELLING

De instellingen, zoals de kleuren, kunnen via de GUI gewijzigd worden. Om te weten waar ze tussentijds bewaard worden, zeg: amaze −init
Om alle standaardinstellingen te herstellen, en de bewaarde instellingen te negeren, gebruikt u de −no−restore optie.

BESCHRIJVING

amaze is een grafische toepassing om eenvoudige doolhoven te genereren en af te drukken. De doolhof-kenmerken (omvang en uitzien) kunnen via de GUI gekozen worden, of vooraf bepaald via tekstopdracht-argumenten.

Termen
Een doolhof bestaat voor ons uit tegels, en een verzameling muren tussen die tegels. Tussen elk paar buurtegels bevindt zich wel of niet een muur; zo niet, dan zijn de tegels verbonden. Als tegel A met tegel B verbonden is, en B met C, dan zijn A en B ook verbonden (indirekt, via B). De opeenvolging A-B-C van tegels heet een pad van A naar C. Elk doolhof heeft een vertrek-tegel en een aankomst-tegel; het pad hiertussen heet het spoor door het doolhof (daarvan kan er slechts één zijn). De uitdaging en de lol van doolhoven zijn, van oudsher, om het spoor als pad door een doolhof te vinden.

Akties
Het schakelvlak toont een serie doolhof-instellingen en een enkel doolhof. Dit doolhof wordt willekeurig gebouwd, elke keer dat de doolhof-omvang verandert (zie de "Hoogte" en "Breedte" instellingen), en steeds wanneer u het Bestand > Nieuw menupunt kiest. Met de Zicht > Toon spoor wissel kiest u of het spoor (het "spoor van broodkruimels", zogezegd) in het doolhof wel of niet op het scherm getoond moet worden. Elke keer dat u vertoning inschakelt, wisselt de manier van tonen tussen kompleet stilbeeld en bewegen ("kruipend" door het doolhof). Zie tevens de optie −creep. Wanneer u een doolhof afdrukt (met Bestand > Druk af...) levert dit twee pagina’s op: eerst het doolhof zonder spoor, en dan het doolhof met een stippellijn om het spoor aan te geven.

Omtrek
U kunt een omtrek-beeld (ook wel bekend als "masker") opgeven op de vorm van het doolhof te bepalen. Bij verstek zal het doolhof de hele rechthoek van beschikbare tegels volledig bedekken. Een masker bestaat uit een beeld, en een "dode" kleur. Thans is de dode kleur altijd die van het (0,0) punt van het beeld. Ieder beeldpunt met dezelfde kleur wordt als dood gezien. Wanneer u een masker aangeeft, wordt het over de rechthoek gespannen, waarna alle tegels, van welke het middelste beeldpunt overeenkomt met een dood beeldpunt in het masker, van het doolhof uitgesloten worden. Dus als het maskerbeeld een afbeelding is van kat op een (egaal) witte achtergrond, dan zal het doolhof ook zo’n kat-vorm hebben. U kunt het omtrekbeeld instellen met Bestand > Open omtrek, of gewoon een beeld (moet een plaatselijk bestand zijn) het doolhofgebied op slepen.

Opmerking
Intern wordt het doolhof weergegeven als een raster van cellen. Voor vierkante en driehoekige tegelvormen staat één tegel gelijk aan één cel; voor zeshoekige tegels, aan twee cellen; voor achthoekige, één of drie. Sommige kanttekeningen in de dokumentatie kunnen onduidelijk zijn als u zich niet van dit onderscheid bewust bent.

De versie van amaze die op Windows loopt, werkt als pure GUI-toepassing, zonder terminalvenster. Dit houdt in dat er geen sprake is van "standaard uitvoer", dus als u bijvoorbeeld het resultaat van −init wilt zien, moet deze door de −out bestand optie in de tekst- opdrachtregel voorafgegaan worden.

OPTIES

−x kolommen

bepaalt het aantal tegelkolommen het doolhof-raster. U kunt dit later in de GUI bijwerken met de "Breedte"-teller of -schuif.

−y rijen

bepaalt het aantal tegelrijen het doolhof-raster. U kunt dit later in de GUI bijwerken met de "Hoogte"-teller of -schuif.

−p/−path beeldpunten

bepaalt de breedte, in beeldpunten, van het spoor door het doolhof, wanneer dat in de GUI getoond wordt (zie optie −s). U kunt dit later in de GUI bijstellen met de "Pad"-teller of -schuif. Als het venstervlak te klein is, kan het spoor smaller getekend worden.

−wall beeldpunten

bepaalt de breedte, in beeldpunten, van de muren in het doolhof. U kunt dit later in de GUI bijstellen met de "Muur"-teller of -schuif. Als het venstervlak te klein is, kunnen de muren smaller getekend worden.

−stay faktor

bepaalt hoe lang elke stap in het doolhof probeert in dezelfde richting te volharden. Op 1 gezet zal de richting bij elke tegel volkomen willekeurig zijn; on N gezet, is de kans of willekeur 1 op N. Volledig willekeurig lopende doolhoven hebben vaak een betrekkelijk lang spoor.

−cuts aantal

zal trachten het opgegeven aantal afsnijdingen tussen buurtegels te maken, terzijde van het spoor. Nul als aantal houdt in dat het doolhof geen lussen in paden zal hebben, een positief aantal betekent dat sommige muren niet met de buitenmuur verbonden zullen zijn. Het aantal hier is een bovengrens, en kan in het doolhof lager uitvallen.

−tile vorm

vorm van de doolhoftegels: triangle (driehoek), square (vierkant), hexagon (zeshoek) of octagon (achthoek).

−mask bestand

zal het beeld in het bestand gebruiken om een deel van het tegelraster te verdekken, met de kleur van pixel (0,0) als dode kleur. Zodoende zal een beeld van een vorm op een egale achtergrond resulteren in een doolhof in diezelfde vorm. Uitzonderlijke waarden voor bestand zijn "[total]" (geen masker), "[round]" (ingebouwde ronde vorm), en "[heart]" (voor Valentijnsdag). Als u per sé een bestandsnaam moet gebruiken die met "[" begint, plak er dan "[image]" voor.

−path-color kleur

bepaalt de spoorkleur. Voor een uitvoerige beschrijving van kleurnaamvormen, zie http://doc.qt.nokia.com/4.7/- qcolor.html#setNamedColor. Voorbeelden: "steelblue", "#112233".

−tile-color kleur

bepaalt de tegelkleur. Vergelijk optie −path-color.

−text-color kleur

bepaalt de boodschaptekstkleur. Vergelijk optie −path-color.

−text tekst

bepaalt de tekst van de boodschap. Deze boodschap zal langs het spoor geschreven worden (één letter per tegel, met willekeurige tussenafstand), zodat het vinden van de oplossing tegelijk het teruglezen van de boodschap mogelijk maakt.

−wall-color kleur

bepaalt de doolhofmuurkleur. Vergelijk optie −tile-color.

−do-show

−s

toont het spoor als een stippellijn in het doolhof in de GUI.

−cover 0-100

bepaalt welk percentage van het spoor ten hoogste tijdens het kruipen getoond wordt. Het spoor groeit vanaf het vertrekpunt, met een gegeven stapgrootte (zie optie −steps). Zodra dit percentage bereikt is, begint de staart met dezelfde snelheid richting aankomst te krimpen.

−creep ms

bepaalt de pauze (in millisekonden) tussen de schreden van een bewegend spoor. Als de waarde nul is, staat het spoor stil.

−steps aantal

zal het spoor in dit aantal stappen van vertrek tot aankomst laten kruipen. De effektieve stapgrootte zal minstens één cel bedragen.

−out bestand

leidt de standaard uitvoer om naar het gegeven bestand. Op MS Windows zult u dit nodig hebben om enige uitvoer van bijvoorbeeld −help of −init te krijgen.

−err bestand

leidt de standaard fout-uitvoer om naar het gegeven bestand. Op MS Windows zult u dit nodig hebben om niet-GUI foutmeldingen te zien.

−std bestand

leidt zowel de standaard normaal- als fout-uitvoer om naar het gegeven bestand. Het is niet juist om tegelijkertijd −out en −err met hetzelfde bestand te gebruiken, dat zou het ene met het andere overschrijven.

−locale taal

kies uitdrukkelijk een vertolking. Thans zijn(gedeeltelijk) beschikbaar: "da", "de", "en_GB", "en_US", "eo", "es", "fr", "nl" (= Nederlands), en "zh_CN".

−mini

beperkt de UI om op een kleiner beeldscherm te passen. Hiermee kunt u amaze effektief tot op zo’n 320×200 beeldpunten gebruiken.

−do-splash

toont een welkomstbeeld tijdens de start.

−no-splash

toont geen welkomstbeeld tijdens de start.

−no-restore

negeert bewaarde instellingen, en volgt de oer-instellingen.

−no-retain

slaat het bewaren van bijgewerkte instellingen over.

−init

drukt het pad af van het bestand waar the instellingen bewaart worden.

Qt Algemene Opties
Deze stammen uit de gebruikte Qt 4.7 widget-biblioteken.
−style=
stijl
−style 
stijl

bepaalt de GUI-stijl. Mogelijke waardes zijn motif, windows, en platinum.

−stylesheet=stijlblad
−stylesheet 
stijlblad

bepaalt het stijlblad. De waarde moet het pad zijn van een bestand dat het stijlblad bevat. Bemerk: relatieve URL’s in het stijlblad-bestand zijn relatief t.o.v. het pad van het stijlbladbestand.

−session=sessie
−session 
sessie

herstelt de toepassing van een eerdere sessie.

−widgetcount

meld, op het einde, het aantal nog intakte widgets en het grootste aantal widgets dat tegelijkertijd bestaan heeft.

−reverse

zet de layout-richting van de toepassing als Qt::RightToLeft.

−graphicssystem

bepaalt het te gebruiken back-end voor widgets en QPixmaps op het scherm. Mogelijke opties zijn raster en opengl.

−nograb

vertelt Qt dat het nooit de muis of het toetsenbord moet grijpen. (Alleen Qt met QT_DEBUG.)

−dograb

onder een debugger lopen kan een impliciete −nograb inhouden, gebruik −dograb om te overstemmen. (Alleen Qt met QT_DEBUG; enkel onder X11.)

−sync

wisselt naar synchrone loop voor debugging. Zie Debuggingtechnieken voor een uitvoerigere uitleg. (Alleen Qt met QT_DEBUG; enkel onder X11.)

−direct3d

maakt de Direct3D paint engine de widget paint engine bij verstek in Qt. Deze funktie is eksperimenteel. (Alleen op Microsoft Windows.)

X11 Common Opties
De X11 versie van Qt ondersteund een aantal traditionele tekstopdracht- opties voor X11.
−display 
display

bepaalt de X display (default is $DISPLAY).

−geometry geometry

bepaalt de client geometrie van het eerst vertoonde venster.

−fn font
−font 
font

definieert het toepassingslettertype. Het font moet opgegeven worden met een zogeheten X logische font-beschrijving.

−bg kleur
−background 
kleur

bepaalt de default achtergrondkleur en een toepassings-palet (lichte en donkere schakeringen worden berekend).

−fg color
−foreground 
kleur

bepaalt de default voorgrondkleur.

−btn kleur
−button 
kleur

bepaalt de default knopkleur.

−name naam

bepaalt de toepassingsnaam.

−title titel

bepaalt de toepassingstitel.

−visual TrueColor

dwingt de toepassing op een 8-bit scherm een TrueColor visual te gebruiken.

−ncols aantal

beperkt het aantal in de kleurkubus toegekende kleuren op een 8-bit display, wanneer de toepassing de QApplication::ManyColor kleurspecifikatie gebruikt. Als het aantal 216 is, dan wordt een 6×6×6 kleurkubus gebruikt (d.w.z. 6 rood-tinten, 6 groen-tinten, en 6 blauw-tinten); voor andere waardes wordt een kubus ongeveer in de verhouding van 2×3×1 gebruikt.

−cmap

laat de toepassing op een 8-bit display een eigen kleurenrooster installeren.

−im

bepaalt de invoermethode-server (equivalent met het zetten van de XMODIFIERS omgevingsvariabele)

−inputstyle

definieert hoe de invoer in het gegeven widget ingevoegd wordt, bijvoorbeeld onTheSpot laat de invoer direkt in het widget verschijnen, terwijl overTheSpot de invoer in een boven het widget zwevend kader toont en het pas na voltooiing van de redaktie ingevoegd wordt.

EINDSTATUS

Amaze resulteert alleen in een niet-nul waarde bij onherstelbare interne problemen of ongeldige tekstopdracht-argumenten.

FOUTEN

Fouten in tekstopdracht-argumenten worden in de standaard-uitvoer gemeld. Gebruiksfouten in de GUI resulteren meestal in een vertaald, met voorrang getoond meldvenster.

OMGEVING

Het toepassingsdeel van dit programma wordt niet via omgevings- variabelen bestuurd. De meegeladen biblioteken (voor Qt, en X11 onder Linux) kunnen eigen omgevingsvariabelenafhankelijkheden hebben.

BESTANDEN

De hieronder vermelde bestandspaden gelden voor Ubuntu, en kunnen in andere omgevingen verschillen.

/usr/share/amaze/*.qm

− de Qt vertaalbestanden

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

− voor het burobladmenu

/usr/share/doc/amaze/*

− copyright e.d.

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

− beeldjes voor buroblad en toepassingsmenu

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

− deze handleiding

/usr/bin/amaze

− de programmakode

$HOME/.config/Morgul/amaze.conf

− de tussentijds bewaarde instellingen voor deze gebruiker

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

− aar de update-kontrole de huidige versie en uitgave nakijkt

Zie optie −init voor het systeem-specifieke, per gebruiker aangelegde bestand waarin tussentijds de instellingen bewaard worden.

VERSIES

Dit is de derde versie, 1.2. (De eerste versie, 1.0, is nu verouderd.) Het is beschikbaar op http://qtamaze.sourceforge.net als brontekst (via CVS), als Ubuntu/Debian-pakket, en als Windows XP MSI-bestand.

VOLGENS

Amaze tracht zicht te houden aan de GUI-aanbevelingen en Qt voorbeelden in de Qt 4.5-4.7 dokumentatie, de Gnome-richtlijnen voor het ".desktop"-bestand, en de WiX-aanbevelingen voor de MSI-installeur.

OPMERKINGEN

Het genereren van doolhoven is op zich geen nieuw of uitdagend onderwerp, maar leuk genoeg voor mij om als onderwerp van een projekt te dienen.

Voor meer details over lopende zaken en veranderingen op stapel, werp een blik op de projektstatus te http://qtamaze.sourceforge.net/, of haal de brontekst via CVS aldaar en zie het bestand amaze/TODO.

Te doen
− We eisen dat het doolhof in het venstervlak past. Dit maakt het makkelijk te vergroten en verkleinen, maar beperkt de gebruiker tot het maken van doolhoven die op het scherm passen.
− Deze handleiding is alleen onder Ubuntu beschikbaar; we zouden bij de Windows MSI een PDF moeten uitleveren.

Vertaling
− Ik heb een gedeeltelijke vertaling voor [da], [de], [eo], [es], [fr], [nl], [zh_CN] maar ik weet vrij zeker dat die niet aan alle regels voldoen, en sommigen zijn niet kompleet.
− De niet-"Comment"-delen in het amaze.desktop-bestand zijn nog niet vertaald. Hetzelfde geldt voor de door de "-help"-optie weergegeven tekst.

Uitvoerformaten
− Uitvoer naar animated-GIF met een door het doolhof kruipend spoor. Of idem maar naar beeldbestandreeks, voor samenvoeging achteraf. We ondersteunen nu een bewegend spoor op het scherm, maar niet in eksport.

Instelling
− De gebruiker kan het stippelpatroon van het spoor nu niet zelf bepalen.

GEBREKEN

− Bestand>Export is een beetje raar: het bezit geen "Alle bestanden (*.*)" filter, laat een transparante rand over als het schermtekenvlak groter is dan het doolhofbeeld, en zou beter afgewerkt kunnen worden.
Bestand>Blend, Bestand>Maya en Bestand>Virtual zijn experimenteel en niet erg kompleet; ze voeren respektievelijk een Blender Python-script, een Maya MEL-script, en een X3D/VRML-bestand uit. MEL en X3D missen tegelvloeren, alle laten het spoor niet zien, en voor MEL ontbreken de kleuren.
− Als u het vertrekpunt direkt naast het aankomstpunt kiest, kan het gebeuren dat het spoor het doolhof helemaal niet doorloopt. Als ze schuin tegenover elkaar op dezelfde hoek liggen, kan die hoek schijnbaar ontbreken, omdat het geen buitenmuren heeft.
− Meer gebreken en schoonheidsfoutjes worden beschreven in de foutmeldingen en verbeteringsvoorstellen op http://sourceforge.net/p/qtamaze/_list/tickets.
− Doolhoven met precies één kolom of één rij kunnen vreemd uitvallen.

VOORBEELD

amaze −no−splash −s

AUTEURS

tinco at SourceForge

ZIE OOK

xlaby(1).