home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1997 #3
/
amigamamagazinepolishissue03-1
/
ma_1995
/
08
/
ami010.txt
< prev
next >
Wrap
Text File
|
1997-04-07
|
16KB
|
298 lines
"ZAKRESEM" GO!
<lead>Niezbëdnym "wyposaûeniem" kaûdego znanego programu
graficznego jest moûliwoôê definiowania i operowania ciâgami
kolorów. Okreôlajâca je, swojsko brzmiâca, angielska nazwa RANGES
jak dotâd nie znalazîa trwaîego polskiego odpowiednika, dlatego
teû pozwólcie, ûe w tym artykule bëdë uûywaî najbardziej
zbliûonego, czyli tytuîowego ZAKRESU. Zakresy moûna spotkaê
wîaôciwie w kaûdym liczâcym sië programie graficznym dla Amigi,
jednak w wiëkszoôci wypadków sposób ich wykorzystania nie róûni
sië zasadniczo.
<a>Tadeusz Talar
<txt>Jednym z programów, które znacznie odbiegajâ od tej
"szaroôci" zastosowaï, jest ImageFX. Oprócz "klasycznych"
operacji z zakresami, dostëpne sâ w nim równieû takie, których
próûno szukaê w innych aplikacjach. Zanim jednak przedstawië
przykîady, kilka zdaï o definiowaniu zakresów w ImageFX.
Po uruchomieniu programu warto od razu przejôê do panelu operacji
na palecie kolorów, czyli kliknâê na duûym gadûecie PALETTE, gdyû
to wîaônie tam (patrz rys. 1.) moûemy okreôliê sekwencje kolorów,
stanowiâcych zakresy. Piszë w liczbie mnogiej, poniewaû ImageFX
udostëpnia moûliwoôê tworzenia 8 zakresów. Procedura tworzenia
jest prosta. Wystarczy zmieniê ustawienie gadûetu wyboru zakresu
(rys. 1., ûóîty obrys) z poîoûenia ALL na dowolny zakres, który
chcemy wybraê, nastëpnie kliknâê na pierwszym kolorze w palecie
kolorów, który bëdzie stanowiî poczâtek zakresu, kliknâê na
RANGE, wskazaê kolor, jaki ma byê ostatnim w zakresie. Program
"oznaczy" zdefiniowany zakres za pomocâ krótkich kresek w ôrodku
kaûdego koloru zakresu. W ten sposób moûemy zdefiniowaê wszystkie
8 zakresów. Niestety, jak widzicie, zakres mogâ stanowiê tylko
kolory wystëpujâce po sobie w palecie kolorów, dlatego teû w celu
umieszczenia wybranych barw na wîaôciwych pozycjach palety naleûy
skorzystaê ze znajdujâcych sië w panelu PALETTE gadûetów COPY i
SWAP. Bardzo przydatny jest teû gadûet SPREAD, umoûliwiajâcy
tworzenie poôrednich kolorów pomiëdzy wskazanymi barwami, oraz
SORT, porzâdkujâcy kolory w wybranym zakresie (lub w wypadku
ustawienia gadûetu wyboru zakresu na ALL -- wszystkie kolory
palety) w kolejnoôci od najjaôniejszego do najciemniejszego lub
vice versa. Program umoûliwia równieû "zablokowanie" kolorów,
stanowiâcych zakres lub caîâ paletë, po klikniëciu na LOCK.
Gadûet ten zmienia wtedy swój stan na UNLOCK, co oznacza, ûe
powtórne klikniëcie na nim powoduje "odblokowanie" kolorów danego
zakresu lub caîej palety. Odpowiedú na pytanie, "do czego moûe
sië nam to przydaê?", znajdziecie w dalszej czëôci tego
artykuîu... I to tyle tytuîem wstëpu. Czas na praktyczne
spojrzenie na zastosowanie zakresów w programie ImageFX. Na
poczâtek
<sr>Klasyka, czyli "Gradient Fill"
<txt>Moûliwoôê wypeîniania obszaru obrazka "îagodnym przejôciem"
pomiëdzy wybranymi kolorami, czyli po prostu GRADIENT FILL, jest
opcjâ powszechnie spotykanâ w programach graficznych. Sposób jej
realizacji w programie ImageFX nie róûni sië zasadniczo od
rozwiâzaï przyjëtych w takich programach, jak Brillance, DPaint
czy Personal Paint. Wystarczy zdefiniowaê zakres, np. R1, wcisnâê
klawisz [F7], co spowoduje wyôwietlenie panelu, sîuûâcego do
definiowania parametrów wypeînienia (rys. 2.), i wybraê
odpowiedni rodzaj TYPE: (rys. 2., czerwony obrys) wykorzystujâcy
zakres, oraz ustawiê gadûet obok RANGE: na nazwë uûywanego przy
wypeînianiu zakresu, tzn. w naszym wypadku R1. Nastëpnie trzeba
wybraê odpowiednie "narzëdzie malarskie" w panelu TOOLBOX, np.
wypeîniony prostokât, i spróbowaê go namalowaê na obrazku. Warto
w tym miejscu zaznaczyê, ûe o ostatecznym wyglâdzie wypeînienia
GRADIENT FILL bëdâ decydowaê odpowiednie ustawienia gadûetów
SMOOTH, SKEW i ROUGHNESS, tak jak to widaê na rys. 3.
W ImageFX, pomimo zasadniczego podobieïstwa tworzenia wypeînieï
typu GRADIENT FILL do innych, popularnych, programów malarskich
dla Amigi, wystëpujâ takûe i róûnice. Po pierwsze brak jest
moûliwoôci "rotowania" kolorów, stanowiâcych zakres, czyli
popularnego COLOR CYCLING. Po drugie zaô, dziëki bardzo
efektywnej opcji SMOOTH zakres mogâ stanowiê jedynie dwa kolory,
a i tak na gotowym wypeînieniu efektem bëdzie îagodne "przejôcie"
od jednego koloru do drugiego poprzez wartoôci poôrednie. Na
marginesie wypeînieï GRADIENT FILL w programie ImageFX nasuwa mi
sië jeszcze jedna maîa, ale przykra, uwaga. Otóû w porównaniu z
wypeînieniami tego typu, tworzonymi za pomoca konkurenta,
programu ADPro, wyglâdajâ one znacznie gorzej.
<sr>Zakres a'la "Stencil"
<txt>Z pewnoôciâ wielokrotnie stykaliôcie sië w róûnych
programach graficznych z opcjâ STENCIL. Dziaîanie jej, w skrócie
mówiâc, polega na tym, ûe po wskazaniu odpowiednich kolorów, te
punkty obrazka, które je majâ w trakcie edycji, pozostanâ nie
zmienione. Pozwala to na bardzo selektywnâ obróbkë, bez obawy o
naruszenie kolorów punktów, na których zachowaniu nam zaleûy. Jak
dziaîa w praktyce STENCIL w popularnym DPaincie, moûecie sië
przekonaê choêby z jednego z artykuîów cyklu, poôwiëconego temu
programowi, autorstwa S. Wësîawskiego. Chciaîbym przedstawiê
realizacjë tej idei w ImageFX.
W programie tym uûywane sâ w tym celu zakresy oraz opcja
wîâczania lub wyîâczania z edycji punktów o kolorach stanowiâcych
dany zakres, o doôê przewrotnej nazwie TRANSPARENCY. Spójrzcie na
rys. 4., który pokazuje sposób uûycia zakresów a'la STENCIL. Na
caîej powierzchni oryginalnego rysunku, skîadajâcego sië z
wielokolorowych prostokâtów, narysowaîem, przy odpowiednio
ustawionej opcji TRANSPARENCY, czarny prostokât (oczywiôcie
rysunek moûe byê bardziej skomplikowany, ale dla potrzeb tego
przykîadu jest, jaki jest). W normalnych warunkach, tzn. bez
modyfikacji TRANSPARENCY, powinien on "przykryê" wszystkie
prostokâty, jednak ja chciaîem poeksperymentowaê nieco z
fragmentami o kolorach fioletowym i jasnoniebieskim. W tym celu
kliknâîem najpierw na gadûecie PALETTE, by "przejôê" do panelu
definicji palety, kliknâîem na pierwszej lepszej pozycji palety,
nastëpnie wybraîem PICK i wskazaîem na rysunku pierwszy
interesujâcy prostokât, co spowodowaîo, ûe jego kolor, tzn.
fioletowy, ImageFX umieôciî w wybranym miejscu palety. Nastëpnie
kliknâîem na nastëpnej pozycji w palecie, znowu wybraîem PICK i
tym razem na rysunku wskazaîem prostokât o kolorze
jasnoniebieskim. Majâc w palecie obok siebie dwa interesujâce
mnie kolory, utworzyîem z nich zakres R1.
Na poczâtku chciaîem, by rysowany czarny kwadrat "nie uszkodziî"
kolorów innych niû te dwa wybrane przeze mnie. Kliknâîem wiëc na
gadûecie TOOLBOX i w panelu tym, poniewaû na co dzieï uûywam
wersji 1.5 ImageFX-a, wybraîem gadûet COMPOSITE, bo wîaônie tam
moûna zdefiniowaê opcjë TRANSPARENCY. Szczëôliwi posiadacze
ImageFX-a 2.0 powinni kliknâê na gadûecie, pokazanym na rys. 4.
(PEN MENU). W opcji TRANSPARENCY "wîâczyîem" do dalszej edycji
tylko kolory z zakresu R1, ustawiajâc odpowiednio gadûet obok
napisu INCLUDE:, natomiast EXCLUDE: pozostawiîem bez zmian, tzn.
w pozycji NONE. Teraz wybraîem kolor czarny i narysowaîem
wypeîniony prostokât na prostokâtach. Jak widzicie, zmianie na
kolor czarny ulegîy jedynie te fragmenty rysunku, które miaîy
jeden z kolorów zakresu R1. Kolejnâ próbâ byîo sprawdzenie
sytuacji odwrotnej, czyli pozostawienie "nie tkniëtymi"
fragmentów obrazka o kolorach innych niû fioletowy i
jasnoniebieski.
Wcisnâîem wiëc klawisz [u] (Undo), zmodyfikowaîem ustawienia
TRANSPARENCY tak, jak widzicie to na rys. 4. (INCLUDE: ALL,
EXCLUDE: R1), i znowu narysowaîem czarny prostokât, przykrywajâcy
zawartoôê rysunku. I jak sië mogîem tego spodziewaê, "nie
przykryî" on jedynie tych fragmentów rysunku, które miaîy kolor z
zakresu R1.
Mam nadziejë, ûe powyûszy, proôciutki, przykîad, zachëci Was do
innych eksperymentów z TRANSPARENCY (z innymi ustawieniami lub w
poîâczeniu z innymi trybami rysowania), ale zanim przejdë do
kolejnego tematu, jakim bëdzie uûycie odnoszâcego sië do
zakresów, znajdujâcego sië w panelu PALETTE, gadûetu LOCK, kilka
sîów o interesujâcym Was zapewne "suwaczku" CLOSENESS. Ustawienie
tego gadûetu okreôla bowiem "czuîoôê" opcji TRANSPARENCY, to
znaczy, jak bardzo opcja ta ma wpîywaê na kolory zbliûone do tych
znajdujâcych sië w zakresach. Im wyûsza jest wartoôê, tym wiëcej
punktów o kolorach zbliûonych do zawartoôci zakresów bëdzie
odpowiednio wîâczanych lub wyîâczanych opcjâ TRANSPARENCY. W
wypadku ustawienia CLOSENESS na 1, tylko punkty o kolorach z
zakresów bëdâ modyfikowane. Spróbujcie poeksperymentowaê, a
przekonacie sië, jak zaskakujâce rezultaty mogâ przynieôê róûne
ustawienia CLOSENESS.
<sr>Po co ten "Lock"?
****** to, co jest w >...<, proszë wyboldowaê **********
<txt>
>I. Dla genlocka.<
Umiejëtne operowanie opcjami, zawartymi w panelu Palette, pozwala
na îatwe przystosowanie dowolnego obrazka do zastosowaï wideo.
Jak wiecie, Amiga pozwala na stosunkowo proste poîâczenie naszej
komputerowej twórczoôci z "ûywym" obrazem wideo. Naleûy jedynie
wyposaûyê sië w genlock. Niestety, w wiëkszoôci popularnych
rozwiâzaï tych urzâdzeï musimy pamiëtaê o tym, ûe "przezroczyste"
dla obrazu z np. magnetowidu bëdâ jedynie te fragmenty obrazka
komputerowego, które majâ pierwszy kolor umieszczony w palecie
kolorów, tzw. kolor 0. Dlatego, jeûeli chcecie uniknâê przykrego
efektu "przeôwitywania" obrazu z magnetowidu przez aktualnie
wyôwietlany obrazek, musicie zadbaê o to, by dany obrazek nie
zawieraî ani jednego punktu o tym wîaônie kolorze. Na poniûszym
przykîadzie postaram sië zademonstrowaê, jak to moûna zrobiê.
Przypuôêmy, ûe wîaônie tworzymy efektownâ czoîówkë kasety,
zawierajâcej rejestracjë ôlubu, i chcemy na wstëpie umieôciê
zeskanowane zdjëcia païstwa mîodych. Niestety, po utworzeniu
odpowiedniego skryptu w Scali stwierdzamy, ûe po "naîoûeniu" ich
na tîo, stanowiâce piëkne ujëcia budynku USC i koôcioîa,
poszczególne postacie "przepuszczajâ" je niczym sito. By tej
sytuacji zaradziê, skorzystajmy z ImageFX-a. Wczytajmy obrazek
panny mîodej. Teraz kliknijmy na gadûecie PALETTE, a nastëpnie na
gadûecie RENDER. Spowoduje to wygenerowanie przez program palety,
zawierajâcej 256 kolorów, które wystëpujâ w obrazku. By sië
przekonaê o tym, jak one wyglâdajâ, kliknijcie na gadûecie
cyklicznym, sîuûâcym do wyboru aktualnie wyôwietlanej palety
kolorów (rys. 1., czerwony obrys), ustawcie go w pozycji Rend i
za pomocâ "strzaîki w górë" (rys. 1., zielony obrys) wyôwietlcie
wszystkie kolory. Nastëpnie kliknijmy na pierwszym kolorze w
palecie (kolor 0 -- w lewym górnym rogu palety kolorów) i po
przyjrzeniu sië dokîadnie pozostaîym kolorom ustawmy za pomocâ
"suwaków" kolor, który NIE WYSTËPUJE w poprawianym obrazku.
Nie jest istotne, jaki on bëdzie (moûe to byê np. czysty kolor
niebieski, tzn. suwak B, ustawiony na 255, a pozostaîe na 0, lub
ûóîty -- R 255, G 255, B 0), gdyû w koïcowym efekcie stanie sië
on "przezroczysty" dla obrazu wideo. Po dokonaniu modyfikacji
kliknijmy na gadûecie, sîuûâcym do wyboru zakresu (rys. 1., ûóîty
obrys), i wybierzmy dowolny zakres (np. R1). Teraz kliknijmy na
gadûecie RANGE, nastëpnie na zmienionym poprzednio kolorze 0
(spowoduje to oczywiôcie utworzenie zakresu, skîadajâcego sië
tylko z jednego koloru -- koloru 0) i "zablokujmy" ten zakres
przez klikniëcie na gadûecie LOCK (zmieni on swój stan na
UNLOCK). Powyûsze operacje spowodujâ, ûe w momencie kolejnego
wygenerowania obrazka, opcjâ RENDER w panelu RENDER, ImageFX
utworzy wyjôciowy obrazek o zaîoûonych przez nas parametrach
(tzn. wymiarach i liczbie kolorów), którego poszczególne kolory
bëdâ umieszczone w nowo wygenerowanej przez program palecie od
pozycji 1 do ustawionej liczby kolorów. Kolor ustawiony w pozycji
0, pomimo tego ûe nie wystëpuje w obrazku, nie zostanie
zmieniony, poniewaû jest "zablokowany". Wystarczy teraz zapisaê
tak poprawiony obrazek panny mîodej na dysk i w Scali porównaê go
z wizerunkiem pana mîodego. Róûnica powinna byê widoczna goîym
okiem.
W opisany powyûej sposób moûemy zmieniaê, a nastëpnie "blokowaê"
za pomocâ LOCK wiëkszâ liczbë kolorów, np. wtedy, gdy chcemy, by
paleta zawieraîa kolory, w których chcemy doîâczyê do obrazka
napisy w Scali, a które istotnie róûniâ sië od kolorów obrazka. W
kaûdym wypadku muszâ one stanowiê odpowiednio zdefiniowany zakres
(czyli naleûy modyfikowaê kolejne pozycje palety kolorów), w
wypadku przeznaczenia obrazka do nakîadania na obraz wideo zakres
ten powinien sië koniecznie rozpoczynaê od pozycji 0.
>II. Dla Workbencha<
Innym przykîadem zastosowania "blokowania" zakresu moûe byê
tworzenie wîasnego tîa, które stanowi wypeînienie poszczególnych
elementów Workbencha, tzn. ekranu (Screen), okna Workbencha
(Workbench) i okien (Windows). Dla nieco starszych "przyjacióîek"
istnieje kilka programów public domain, realizujâcych të funkcjë,
natomiast nowe systemy operacyjne Amigi umoûliwiajâ umieszczenie
w nich (za pomocâ znajdujâcego sië w katalogu Prefs programu
WBPattern) odpowiedniego wzoru lub obrazka (rys. 5.). Czësto
jednak operacja takiego "upiëkszania" nastrëcza trochë kîopotów.
Zazwyczaj bowiem Amiga niezbyt dobrze radzi sobie z poprawnym
"dopasowaniem" kolorów obrazka (ang. remapping) do zdefiniowanej,
istniejâcej w systemie, palety kolorów. Moûna, co prawda, ustawiê
wiëkszâ liczbë kolorów, w jakich pracuje Workbench, i przeîâczyê
systemowâ paletë (umieszczonym we wspomnianym katalogu Prefs
programie Palette) ze standardowej (4-kolorowej) na paletë
wielokolorowâ, ale nie mamy gwarancji, czy efekt bëdzie poprawny,
ponadto zwiëkszona liczba kolorów spowolni pracë oraz
zabierze cenne kilobajty pamiëci. Czësto optymalnym rozwiâzaniem
byîoby utworzenie obrazka, zawierajâcego takâ paletë barw i
liczbë kolorów, jaka znajduje sië w uûywanym przez nas
Workbenchu. Ponadto mamy wtedy gwarancjë, ûe wykorzystany jako
tîo obrazek nie spowoduje zmiany koloru ikon.
Rozwiâzaï tego problemu jest wiele. Jeûeli jednak dysponujecie
ImageFX-em, proponujë poniûszy sposób.
Z pewnoôciâ wiëkszoôê z Was (ja takûe) uûywa standardowych
ustawieï Workbencha (tzn. 4 kolory i rozmiar 640 x 256 punktów),
dlatego, jeûeli nie zaleûy Wam na wiëkszej liczbie kolorów,
spróbujmy dostosowaê obrazek do tych parametrów.
Po uruchomieniu ImageFX-a klikamy na gadûecie PALETTE i
przeîâczamy aktualnie wyôwietlanâ paletë, w sposób opisany w
poprzednim przykîadzie, na REND. Kolejnâ czynnoôciâ jest
klikniëcie na gadûecie GRAB. Opcjâ tâ moûemy "zîapaê" dowolnâ
paletë istniejâcego w systemie ekranu. Z wyôwietlonej listy
naleûy wybraê WORKBENCH SCREEN (Uwaga! Jeôli go brak, naleûy
sprawdziê, po klikniëciu na gadûecie PREFS, czy przypadkiem nie
ma ustawionego "ptaszka" na CLOSE WORKBENCH i jeôli jest, naleûy
go usunâê.) Program umieôci w pierwszych czterech pozycjach
palety REND paletë Workbencha (tu nastëpna uwaga, jeûeli ten
przykîad wykonujecie bezpoôrednio po przykîadzie zaprezentowanym
wczeôniej, pamiëtajcie o "odblokowaniu" zakresu, tzn. sprawdúcie,
czy dla kaûdego zakresu gadûet "blokowania" jest w pozycji LOCK,
co, przypominam, oznacza stan "odblokowania").
Kolejnâ czynnoôciâ jest zdefiniowanie zakresu, skîadajâcego sië
ze "zîapanych" kolorów. Wybieramy wiëc, w sposób opisany
poprzednio, odpowiedni numer zakresu, klikamy na pierwszym
kolorze (kolor 0), nastëpnie na gadûecie RANGE i na kolorze
czwartym (kolor 3). Tak okreôlony zakres "blokujemy", ustawiajâc
gadûet LOCK w pozycjë UNLOCK. Nastëpnie wczytujemy obrazek,
który ma znaleúê zastosowanie w Workbenchu. Poniewaû
niekoniecznie musi on mieê odpowiednie rozmiary, to za pomocâ
opcji SCALE w panelu TOOLBOX dostosowujemy go do rozmiarów ekranu
Workbencha, tzn. w naszym przykîadzie 640 x 256 punktów. Teraz
wystarczy wygenerowaê nasz obrazek, przechodzâc do panelu RENDER
i ustawiajâc tryb na PAL: hi-res, liczbë kolorów na 4 oraz, by
zachowaê bardziej naturalny wyglâd obrazka (któremu "obcinamy"
zapewne sporâ liczbë kolorów), warto ustawiê jeden z algorytmów
ditheringu (z praktyki wiem, ûe najlepiej wypada wybór algorytmu
FloydR lub EDD). Tak utworzony obrazek wystarczy zapisaê na dysk,
najlepiej do katalogu SYS: Prefs/Presets, i wczytaê na nasz
Workbench (patrz rys. 6.) przy uûyciu wspomnianego WBPattern. W
opisany sposób moûna takûe dostosowywaê obrazki, przeznaczone do
wykorzystania w MagicWB.