The Art Studio

Sajnos rajzolóprogramok terén nem szenvedünk a bőség zavarában. Van ugyan választék, de a Fine Pen csak sprite-ok rajzolására alkalmas, ráadásul használata is elég körülményes. Erre a célra sokkal alkalmasabb a Spred, de ezzel is csak sprite-okat tudunk rajzolni. Az egyik legrégebbi rajzolóprogram a Lorigraph fapados ugyan, de egész használható (néhány kardinális hiányosságot leszámítva), a file-kezelése viszont botrányos (a kimentendő file-al felülírjuk a program harmadik (LORI3) részét!). Ezen a problémán javít a Zaxial néven ismer változat. A Paintbox érdemel még említést, de egy kicsit bonyolult a kezelése egér nélkül. Ezek mellett még néhány félkész rajzolóprogram jelenti a választékot. Az ENTERPRISE sorsának iróniája, hogy az egyik legjobban használható rajzolóprogram Spectrum átirat! Az OCP (Oxford Computer Publushing) által fejlesztett programot BAM Soft írta át 1989-ben. HSOFT még annyit javított a programon, hogy PC egérrel is kezelhető (természetesen csak soros vonali illesztőkártya használata esetén), ez igencsak meggyorsítja a műveleteket, valamint tovább javította a program használhatóságát.

Az Art Studio arra az ikonvezérelt programozási rendszerre épülő grafikai tervező-program, amelyet a Palo Alto-ban lévő kutatási központban fejlesztettek ki, és az APPLE cég LISSA, illetve MACINTOSH sorozatú számítógépein keresztül vált közismertté - egyben közkedveltté - a hetvenes évek végén. Ennek az újszerű megoldásnak a lényege az, hogy a kezdő felhasználóknak nem kell bíbelődniük a bonyolult billentyűzetkezelés megtanulásával (nem is beszélve az adott géphez használható programozási nyelvről), mert az összes rendszerfunkció a rájuk jellemző ábrák, illetve szövegek ("ikonok") segítségével elérhető. Ez a megoldás profi programozók számára egy kissé gyermetegnek tűnhet, de a laikusoknak a legrövidebb idő alatt lehetővé teszi a rendszer által nyújtott lehetőségek legteljesebb kihasználását.
Az ikonvezérlésű programok legfőbb jellegzetességei a 'pull down' ("redőny")-menürendszer és az "egér" használata. A program funkcióit jelölő ikonok a képernyő egy elkülönített részén helyezkednek el (esetünkben a képernyő felső részén), aktivizálásukat egy kurzor, segítségével érhetjük el, melyet az egérrel mozgathatunk. A Spectrumon az egeret a joystick illetve a billentyűzet helyettesíti, az Enterprise változatban a belső és az EXT1 botkormány. A továbbiakban a képernyőn látható nyilat, amelyet a funkciók kiválasztására használunk fel, kurzornak fogjuk nevezni.
A program főmenüjeként szolgáló ikonsorból egy ikon kurzorral történő aktivizálása a legtöbb esetben egy almenüt, un. "pull down"-menüt fog eredményezni. Ebben a választható funkciók redőnyszerűen, egymás alatt helyezkednek el, erről is kapta a nevét. Az Art Studio "pull down"-menüi különféle opciókat, kapcsolókat illetve munkatáblákat tartalmaznak. A szelektálás közöttük a kurzorral történik: az ikon választása után az almenü "overlay" módon megjelenik és a kurzor fel/le mozgatásával meghatározhatjuk a kívánt opciót. Azt a menüpontot, amelyen a kurzor áll (tehát éppen aktivizálható), inverzben láthatjuk. Ha nem kívánunk a menüpontok között választani, vezessük a kurzort a menün kívülre és nyomjuk meg a tűz gombot.
Az opciók választásával egy rendszerfunkciót, amivel együtt - általában - megváltozik a kurzor alakja is, a funkcióra jellemző ábra fogja helyettesíteni (pl. rajzolásnál a nyíl helyett ceruzát láthatunk).
Egy kapcsoló megváltoztatása nincs hatással a kurzor alakjára, csak a később alkalmazott opciók egyes paramétereit állíthatjuk be velük (pl. az INVERSE kapcsoló aktivizálása után következő rajzoló műveletek inverzben jelennek meg). A kapcsolóknak két állásuk van: ON helyzetben pipa jel, OFF helyzetben egy kereszt jelöli őket. Az almenüpontok között vannak olyanok is, amelyek nem parancs opciók és nem is kapcsolók: ezek egy saját menüsorral díszített munkatáblát hívnak életre (ilyen pl. a FONT EDITOR).
Az elmondottak alapján a program kezelése már mindenki számára rendkívül egyszerű: a kurzor mozgatásával kiválasztjuk a kívánt menüpontot, megnyomjuk a tűz gombot és már dolgozhatunk is. Rajzolási műveleteknél az aktuális funkciók akkor üzemelnek, ha a tűz - gombot lenyomva tartjuk, egyébként csak a kurzort mozgathatjuk (például adott helyre vonalat úgy húzhatunk, hogy a kívánt helyre visszük a kurzort, majd a tűz gomb nyomvatartása mellett mozgatjuk. Egy funkcióból úgy léphetünk ki, hogy a kurzort az ikonsorba visszük és valamelyik másik ikont választjuk (ahol a dolog nem így zajlik, ott arról külön szólunk).
Bevezetésül egyenlőre ennyit. Most mélyedjünk el egy kicsit alaposabban az Alt Studio által nyújtott lehetőségek tanulmányozásában, vizsgáljuk meg sorban, hogy milyen opciókat tartalmaznak a főmenü ikonjai!

ESAVE (Enterprise SAVE) menü
Ez a menüpont néhány Enterprise specifikus I/O műveleteket tartalmaz. A Spectrum verzió PRINT menüpontja lett erre kicserélve, tehát nyomtatással kapcsolatos funkció nem kapott helyett a programban! A kimentett képet valamely egyéb ilyen célt szolgáló alkalmazással nyomtathatjuk ki.

A FILE menü
Ez a menü szabályozza az Art Studio adathordozóra vonatkozó (eredeti) input/output műveleteit.

Az (ATTRS.) ATTRIBUTES-menü
Az a tény, hogy a program Spectrum átirat magában hordozza azt a korlátozást, hogy a program csak attribútum típusú képernyőt kezel. Ezzel a menüvel irányíthatjuk a színek és egyéb attribútumok kiválasztását. A beállított attribútumok az összes rajzoló illetve festő műveletre (vonalak, alakzatok, minták, tollak, fill-ek, ecsetek stb.) és a szövegírásra vonatkoznak!

A PAINT-menü
Innen irányíthatjuk az Art Sdidio rajzolási műveleteit: a tollat, az ecsetet és a sprayt. Ezek mindig az aktuális INK színnel és BRIGHT- illetve INVERSE-kapcsolók figyelembevételével fognak a képernyőn rajzolni (OVER nincs értelmezve).

  • BRUSH - Az ecsetek a tollak "nagybácsikái": nem vonalakat, hanem különböző mintákat rajzolnak a képernyőre. A megfelelő minta a tollakhoz és a festékszóróhoz hasonlóan választható ki a BRUSH opció választása után megjelenő, 16 mintát tartalmazó munkatáblából. Az ecsetek működését két tulajdonság határozza meg: a forma (kiválasztás után a kurzor ezt az alakot veszi fel és a lenyomott tűz-gomb elengedésekor a kurzor pozíciójában ez a minta jelenik meg) és a "mask" (a kurzor lenyomott tűz-gombbal történő mozgatásakor ilyen mintát húz maga után). Próbaképpen válasszuk a fejet ábrázoló ecsetet: ha a tűz-gombot egy pozícióban megnyomjuk (a kart nem mozgatjuk), a pozícióban a forma, a vigyorgó fej jelenik meg; ellenben ha a kurzort lenyomott tűz-gomb mellett mozgatjuk, akkor az ecset "mask" részében meghatározott körvonalat húzza maga után.
    Felhívnánk a figyelmet a készlet első ecsetének hasznosságára: ez egy ún. "nullecset", ami nem tartalmaz sem megszerkesztett formát, sem "mask"-ot. Hasznossága abban rejlik, hogy bár nem húz INK színű képpontokat maga után, az aktuális PAPER színnel mégiscsak rajzol, mert megváltoztatja azon karakterek PAPER színét, amelyeken keresztülhalad. Ez nagyon praktikus dolog: rajzolás közben nem kell mindig az adott karakterek színével foglalkoznunk, egyszerűen megrajzoljuk a képünket "fekete-fehérben", majd a "nullecsettel" beállítjuk először a karakterek kívánt PAPER-, majd - az ATTRIBUTE-menü INVERSE-kapcsolóját ON-ra állítva - az INK színeit.
  • Az EDIT BRUSH opció egy munkatáblát jelenít meg, amelyben mind a 16 féle ecsetminta egyéni kívánalmaink szerint átszerkeszthető. A munkatáblán kinagyított négyzethálós részen látható az ecset formája (balra) és "mask"-ja (jobbra), illetve az ecset normál méretű képe (alul). Az átszerkesztés a kinagyított részeken a kurzor segítségével, egyszerű set/ reset módszerrel történik: a tűz gomb invertálja azt a képpontot, amelyre a kurzor mutat. Minden változtatás azonnal megjelenik a normál méretű képen is. Ha az átszerkesztéssel elkészültünk, állítsuk a kurzort a normál méretű képre és nyomjuk meg a tűz-gombot.
    Megjegyezzük, hogy a szerkesztés csak akkor végezhető el, ha előtte a BRUSH opcióban már választottunk aktuális ecsetet (a programnak tudnia kell, hogy melyiket akarjuk átszerkeszteni).
  • INVERSE - Az ATTRIBUTES menü azonos funkciójú kapcsolója ebben a menüpontban is megjelenik.

A (MISC.) MISCELLANEOUS-menü
Mint a neve is jelzi, ebben a menüben találhatóak azok a különleges szolgáltatások, amelyeket az Art Studio nyújt a felhasználónak.

Az UNDO funkció
Ez a funkció az Art Studio egyik legkiválóbb szolgáltatása: A program állandóan egy másolatot őriz a képnek az éppen aktuális opció választása előtti állapotáról, amelyet az UNDO segítségével megjeleníthetünk a képernyőn. Mit jelent ez gyakorlatilag? Az UNDO meg nem történtté teszi a legutolsó opcióban elkövetett - félresikerült - ténykedésünket, és visszaállítja a hiba előtti állapotot. Például tegyük fel, hogy FILL-ezünk egy alakzatot (ld. később), de a tinta kifolyik. Más rajzolóprogramnál egy súlyos becsületsértés elmormogása után kezdhetnénk újra a munkát, de az Art Studio-ban csak az UNDO-t kell választanunk és máris folytathatjuk a munkát a jó képen.
Felhívnánk a figyelmet arra, hogy az UNDO csak a LEGUTOLSÓ opcióban végzett művelet(sorozat) eredményét törli, de akkor viszont az ÖSSZES fázist (tehát nem lehet egy opcióválasztás után végzett műveletek közül csak egyet törölni)! Nézzünk egy másik példát: valamilyen ecsettel festegetünk a képen, majd átváltunk spray-re és azzal is fújkálunk egy kicsit. Művünk megszemlélése után rájövünk, hogy kimondottan rondát alkottunk és aktivizáljuk az UNDO-t. A képernyőrol csak a spray-műveletek eredménye tűnik el, az ecsettel elkövetett bűneink továbbra is megmaradnak (ezek is eltüntethetőek más módszerrel, pl. ablaktörlés, radír, CLEAR SCREEN stb.). Az említett példa akkor is érvényes, ha nem spray-re, hanem egy másik ecsetre (vagy ugyanarra) váltottunk át.
Azoknál az opcióknál, ahol az UNDO nem funkcionál (a gép a másolatkép fenntartására szolgáló memóriarészt munkaterületnek használja), külön szólunk.

A WINDOWS-menü
Az ablak a képernyő önálló, téglalap alakú része, amelyet az Art Studio-ban egy szaggatott vonal határol be. Az ablakműveleteket a WINDOWS-menüből irányíthatjuk, az összes opcióval végzett művelet az UNDO-val törölhető.

A FILL-menü
A FILL eljárás a képernyő zárt (folytonos vonallal határolt) területeinek valamilyen mintával történő gyors feltöltésére szolgáló funkció. A zárt alakzat feltölthető színnel (SOLID FILL) vagy valamilyen mintával (TEXTURED FILL). A "fill"-ezéshez felhasználható, előre megtervezett minták törölhetőek, és újakat tervezhetünk helyettük (EDIT TEXTURE). A FILL-műveletek az aktuális INK és PAPER színekkel, illetve a BRIGHT kapcsoló figyelembevételével működnek (hibás fényes színekkel). Az INVERSE - értelemszerűen - csak a TEXTURED FILL esetében használható (ha ON állásban van, akkor a mintakészletben is az eredeti minták inverzéből választhatunk). OVER nem használható. Az alakzatok feltöltése - nagyságuktól függően - némi időt vesz igénybe. Ha a kitöltés közben a festék "kicsordult", az UNDO használatával a hiba törölhető.
Megjegyezzük, hogy a "fill"-ezés a képernyő felső három, takart sorára is vonatkozik, vagyis az ikonok által határolt rész nem jelenti egy zárt alakzat határát a programnak.

  • A SOLID FILL opció választása után a kurzor átalakul festőhengerré. Mozgassuk a kiszínezni kívánt zárt alakzat valamely pontjára és nyomjuk meg a tűz-gombot. Az alakzat kiszíneződik az aktuális színnel.
  • A TEXTURED FILL a SOLID FILL-hez hasonlóan használható. Választása után megjelenik egy 32 mintából álló készlet (SELECT FILL TEXTURE), ahol meghatározhatjuk a kívánt mintát (az aktuálisat sötét keret jelöli). Itt is használható az ecsetek használatakor megismert "nullecset"-hez hasonló "nullminta", amellyel egy zárt alakzatban - a képpontok változtatása nélkül - megváltoztathatjuk az attribútumokat.
  • A WASH TEXTURE opció segítségével a már kifestett területeken megváltoztathatjuk a mintát. A minták közül ismét választanunk kell, majd kijelölni azt a területet, amelyet meg kívánunk változtatni. Vigyázat, az opció megváltoztatja azokat a képelemeket is, amelyeket a PAINT-menüben készítettünk!
  • Az EDIT TEXTURE opció használatával mind a 32 minta egyéni kívánalmaink szerint átszerkeszthető. Az opciónak szüksége van az aktuális mintára, tehát ha még nem választottunk ilyet, először ezt kell tennünk, mivel a programnak tudnia kell, hogy melyik mintát akarjuk átszerkeszteni. Ha már van aktuális mintánk, a képernyőn megjelenik a kinagyított illetve normál méretű képe. A szerkesztés a PAINT-menü EDIT BRUSH opciójánál megismertek szerint zajlik. Ha a szerkesztéssel elkészültünk, vigyük a kurzort a minta normál méretű képére és nyomjuk meg a tűz-gombot.

Nem árt ha tudjuk, hogy a FILL eljáráshoz a programban egy belső stack van hozzárendelve, amelybe a "fill"-ezés alatt álló sorok beolvasódnak. A stack mérete hozzávetőlegesen 6 Kbyte, ami általában elegendő a sikeres végrehajtáshoz, bár nagyobb területre vonatkozó, bonyolultabb feltöltésnél előfordulhat, hogy ez a stack túlcsordul. Ilyenkor a program nem száll el, de a feltöltés hiányos lesz, lyukakat láthatunk a "fill"-ezett területen (ez újra "fill"-ezéssel eltüntethető). Szerencsére ez a bántó hiba csak nagyon ritkán fordul elő.

A MAGNIFY-menü
Az Art Stadio engedélyezi az egyes képernyőterületek nagyítását és képpont szerkesztés útján történő változtatását. A nagyítást háromféle méretben végezhetjük: kétszeres, négyszeres és nyolcszoros. A menü MAG x2, MAG x4 és MAG x8 opcióinak választásakor a kurzor átalakul nagyítóüveg formájúra, amelynek segítségével kijelölhetjük a nagyítani kívánt képrészt. Ezután megjelenik a nagyító-munkatábla: a képernyőt a képrész opció szerint meghatározott méretben nagyított változata fogja betölteni, a felső sorban pedig megjelenik a munkatábla saját ikonmenüje. A GRID használata a MAGNIFY-menüből állítható, csak x8 nagyításnál alkalmazható (egy "grid'-négyzet az eredeti képernyőn egy képpontnak felel meg).

  • Azt a képpontot, amelyiket meg akarjuk változtatni, a kereszt formájú kurzorral jelölhetjük ki. A változtatás a munkatábla ikonmenüjében beállított üzemmód szerint fog történni: SET (ceruza, kigyújtja a pixelt), RESET (radír, kioltja a pixelt) vagy TOGGLE (csere, invertálja a képpontot). Az aktuális üzemmód inverzben látható. Ha a kurzort lenyomott tűz-gombbal mozgatjuk, akkor az egymás mellett lévő képpontokat gyorsabban változtathatjuk. A képpont váltó műveletek az aktuális INK és PAPER színek szerint illetve a BRIGHT kapcsolók figyelembevételével dolgoznak, az INVERSE és OVER nem funkcionál.
  • Az attribútumok megváltoztatásához nem kell kilépnünk a nagyítótáblából, mert az ATTRIBUTES-menü a saját ikonmenüjéből is direkt módon hívható.
  • A nagyított terület a képernyőt határoló sávok végén határoló nyilak segítségével görgethető. A görgetés addig tart, amíg a tűz-gombot lenyomva tartjuk. A határoló sávban lévő fehér foltok mutatják, hogy a kép melyik része van kinagyítva a képernyőn.
  • A nagyítás mértéke a menü x2, x4 és x8 ikonjainak választásával bármikor megváltoztatható. Az aktuális nagyítás inverzben látható.
  • Ha a nagyító munkatáblán befejeztük a munkát, a MENU ikon választásával térhetünk vissza az Art Studio főmenüjéhez.

Az UNDO a nagyított képpont szerkesztés után nem üzemel, mert a másolatkép számára fenntartott memóriarészt a program munkaterületnek használja!

A TEXT-menü
Ennek a menünek a segítségével helyezhetünk el a képünkön szöveget (betűket, számokat, írásjeleket). A karakterek megjelenítése kétféle módon - balról jobbra (LEFT TO RIGHT), felülről lefelé (DOWNWARDS) - és 9 féle méretben történhet. A szövegek az aktuális attribútum-jellemzők figyelembevételével íródnak ki.

A FONT EDITOR
A TEXT-menü utolsó tagja egy munkatáblát jelenít meg, amelynek segítségével megváltoztathatjuk, illetve átszerkeszthetjük az utoljára kiválasztott karakterkészletet. Egy készlet 96 karakterből áll, a SPACE-tól (ASCII 32) a copyright karakterig (ASCII 127). Természetesen egy készlet nemcsak betűket illetve írásjeleket, hanem bármilyen karaktert tartalmazhat. A megszerkesztett készletek későbbi felhasználás céljából kimenthetőek kazettára is.
A FONT EDITOR választása után megjelenik a szerkesztő munkatábla. Az aktuális készlet karakterei a képernyő alsó részén láthatóak, a kurrens karaktert keret jelzi. Ez a karakter illetve a készletben előtte és utána lévő karakter kinagyított képe a szerkesztőben is látható, ahol a nyíl alakú kurzor segítségével set/reset módszerrel átszerkeszthetjük őket (egyszerre tehát nem csak egy, hanem három karakterrel dolgozhatunk). Az aktuális karakter kétféle módon állítható be: a kurzort a kívánt karakterre állítva megnyomjuk a tűzgombot vagy a munkatábla ikonsorát határoló nyilak használatával jobbra vagy balra mozgatjuk a keretet.
A FONT EDITOR aktivizálásakor az Art Studio főmenüje eltűnik, és helyette a szerkesztő saját ikonmenüje jelenik meg a felső sorokban.

A SHAPES-menü
Ennek a menünek a segítségével különféle geometriai alakzatokat illetve vonalakat rajzolhatunk a képernyőre. A menü összes opciója az aktuális attribútum jellemzők figyelembevételével működik, a meghúzott vonalak az aktuális toll paramétereivel jelennek meg. Egy opció választása után a kurzor célkereszt formát ölt. Több hasonló típusú alakzat rajzolásánál nem kell mindig újra lehívnunk a menüt, a program mindaddig ugyanabban az üzemmódban marad, amíg új ikont választva ki nem lépünk belőle. A menüben több lehetőség áll a rendelkezésünkre:

  • POINTS: Pont rajzolása. Használata igen-igen bonyolult: a tűz-gomb megnyomására a kurzor pozíciójában megjelenik egy pont.
  • LINES: Vonal rajzolása. A kurzorral előbb a vonal kezdő-, majd végpontját kell kijelölnünk.
  • CONT. LINES: Folyamatos vonal rajzolása. Az első vonal meghúzásánál ugyanaz a teendőnk, mint a LINES opció használatánál, a továbbiakban pedig már csak a következő vonal végpontját kell kijelölnünk, a kezdőpont az utoljára meghúzott vonal végpontja lesz.
  • RECTANGLES: Téglalap rajzolása. A kurzorral a téglalap két átellenes sarkát kell kijelölnünk.
  • TRIANGLES: Háromszög rajzolása. A kurzorral a háromszög három sarokpontját kell kijelölnünk. Ha a három kijelölt pont egy egyenes mentén helyezkedik el, akkor a program - értelemszerűen - egy vonalnak fogja értelmezni a "háromszöget".
  • CIRCLES: Kör rajzolása. Először ki kell jelölnünk a kör középpontját, majd kerületének valamely pontját. A körök rajzolása az egész képernyőre vonatkozik, tehát a három nem látható (főmenü ikonjai által takart) sorra is. Ellipszisek rajzolására csak a WINDOWS-menü RESCALE opciójának használatával nyílik lehetőségünk.
  • RAYS: Sugarak rajzolása. Hasonlóan működik, mint a folyamatos vonalak rajzolására szolgáló opció, de itt a vonalak kezdőpontja mindig ugyanaz (ez jelölendő ki először), csak a végpontokat kell változtatnunk. Ezzel a módszerrel igen érdekes, sugárszerű ábrákat rajzolhatunk.
  • A menü ELASTIC kapcsolójának aktivizálásával egyfajta "rugalmas" rajzolásra nyílik lehetőségünk. Ha a kapcsoló ON állásban van, akkor a program a kurzor mozgatásával párhuzamosan mutatja, hogy a tűz-gomb megnyomása után mit kapunk eredményül. Ez bonyolultabb ábrák rajzolásakor nagy segítséget nyújt a pontos pozícionáláshoz, a kör rajzolásánál viszont érezhetően lassítja a programfutást.
  • A menü utolsó két kapcsolója (SNAP HRZ. és SNAP VRT.) azonos a szövegek pozícionálásánál megismertekkel, a pontos igazításhoz nyújt segítséget.

Tipp:
Az EP-formátumban kimentett karakterkészletet (FONT.DAT file-t) BASIC-ben az alábbi, egyszerű programmal tölthetjük vissza:

100 ALLOCATE 20
110 OPEN £1:""
120 CODE M=HEX$("11,80,B4,01,80,04,3E,01,F7,06,C9")
130 CALL USR(M,0)