ConvolutionFilter
Jedan od mocnijih filtera u Flashu je sigurno ConvolutionFilter. Pomocu njega je moguce definirati vlastite filtre (blur, sharp, beveling, emboss…) Za razliku od npr. ColorMatrix filtera nema definirane dimenzije matrice. Velicina matrice definira izgled i jakost filtera koji zelimo postici. Filter odreduje posao na razini jednog piksela.
Igrajte se na primjeru ispod pomicuci slidere i zatim klik na “prihvati” da bi se primjenio filter.
Primjena je zaista jednostavna. Kao prvo moramo importirati potrebnu klasu:
- import flash.filters.ConvolutionFilter;
Slijedi definiranje polja (tj. matrice) - u mom slucaju to je matrica dimenzija 3×3.
x,y,z,i,j,k,m,n,o su vrijednosti koje su po vasoj volji npr. [10 , 4 , 0 , 2 , 2 , -10 , -20 , 0 , 10]
- var mat:Array = [ x , y , z , i , j , k , m , n , o ];
Nakon toga kreiramo svoj filtar kojemu pridruzujemo nase polje (matricu 3×3)
- var convMat:ConvolutionFilter = new ConvolutionFilter(3,3,mat);
I jos samo primjena filtera na sliku (Instance name slika):
- slika.filters = [convMat];
I to je to. Lagano i mocno. U mom primjeru mijenjanje vrijednosti filtera je izvedeno pomocu slidera pa je i kod dosta dulji, ali u biti sve vazno za ovaj filter je napisano
Samo je potrebno daljnje istrazivanje… Nadam se da sam vam pokrenuo mastu….
Ako zelite detaljan opis izrade ovog primjera oglasite se preko komentara…
Kategorija: Actionscript objavljeno 17.07. 2007

(1 votes, average: 4 out of 5)


Komentari