Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Matrix Filter :: Как юзать (http://www.flasher.ru/forum/showthread.php?t=70342)

sxstudio 12.10.2005 21:39

Matrix Filter :: Как юзать
 
Ребят, Мне надо обесцветить картинку программно..Но я ее подгружаю и она загружается в мувик,который я потом дублирую! обрыл все - нашел токо топик Cacodemon'a - http://flasher.ru/forum/showthread.p...0&page=1&pp=10 -! Он пишет :
Обесцвечивает так ---
gray = new flash.filters.ColorMatrixFilter();
gray.matrix =
[0.4, 0.4, 0.4, 0, 0,
0.4, 0.4, 0.4, 0, 0,
0.4, 0.4, 0.4, 0, 0,
0, 0, 0, 1, 0];

Но ниххх... не работает! Ох уж этот матричный фильтр... У меня flash 8!
Так вот - кто нить может рассказать как это работает и как им пользоватьчся.... А еще лучше примерчик скинуть... самый-самый скудный хотяб - уже хорошо было бы! Или может скажите где в документации лежит этот примерчик! Че то не найду... вроде все обрыл!!!


Спасибо!

ultraflasher 12.10.2005 22:43

F1 нажми

sxstudio 12.10.2005 23:39

Цитата:

Сообщение от ultraflasher
F1 нажми

Спасибо... весьма ценный совет! Может еще есть что?

seifip 13.10.2005 01:40

idi v Help>Flash Help... podajdjot? :D

KidsKilla 13.10.2005 01:48

в 8ке по умолчанию стоит экспорт в 7ю версю плеера. прочекай...

iNils 13.10.2005 11:51

в самом начале вставь
import flash.filters.ColorMatrixFilter;

cacodemon 15.10.2005 07:24

iNils как показывает практика это необязательно, и без него нормально пашет. Хотя может, это возволяет применять фильтры в других плеерах?

2 Аффтор
я делаю так:
_global.gray = new flash.filters.ColorMatrixFilter();
gray.matrix = [0.4, 0.4, 0.4, 0, 0,
0.4, 0.4, 0.4, 0, 0,
0.4, 0.4, 0.4, 0, 0,
0, 0, 0, 1, 0];

ну а потом в любом месте где мне нужно, пишу так:

yourMovieClip.filters = [gray];

iNils 15.10.2005 11:46

Цитата:

Сообщение от cacodemon
iNils как показывает практика это необязательно, и без него нормально пашет.

По крайне мере у меня без import flash.filters.ColorMatrixFilter не работал следущий код:

Код:

import flash.filters.ColorMatrixFilter;
desaturation = 0;
function getDesaturationFilter (t) {
t = t ? t : 1;
var r = 0.212671;
var g = 0.715160;
var b = 0.072169;
return new ColorMatrixFilter ([t * r + 1 - t, t * g, t * b, 0, 0, t * r, t * g + 1 - t, t * b, 0, 0, t * r, t * g, t * b + 1 - t, 0, 0, 0, 0, 0, 1, 0]);
}
_root.createEmptyMovieClip ("mc", 2);
mc.beginGradientFill ("linear", [0xFF0000, 0x00FF00, 0x0000FF], [100, 100, 100], [0, 128, 255], {a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1});
mc.moveTo (100, 100);
mc.lineTo (100, 300);
mc.lineTo (300, 300);
mc.lineTo (300, 100);
mc.lineTo (100, 100);
mc.endFill ();
mc.onEnterFrame = function () {
if (desaturation <= 0) {
des = 0.05;
} else if (desaturation >= 1) {
des = -0.05;
}
desaturation += des;
this.filters = new Array (getDesaturationFilter (desaturation));
};


iNils 15.10.2005 17:45

Цитата:

Сообщение от cacodemon
Хотя может, это возволяет применять фильтры в других плеерах?

Данный фильтр вшит в 8-ой плеер. Поэтому проигрывать в младших версиях возможности нет.

Штрек 17.10.2005 05:43

import flash.filters.ColorMatrixFilter прописывает
путь до класса, что позволяет создавать объект класса
прописывая
_global.gray = new ColorMatrixFilter();
Ни более того......


Часовой пояс GMT +4, время: 03:06.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.