Se o objeto de destino de uma interpolação de movimento contiver filtros, esses filtros serão adicionados usando os métodos
initFilters()
e
addFilterPropertyArray()
da classe Motion.
Inicialização da matriz de filtros
O método
initFilters()
inicializa os filtros. O seu primeiro argumento é uma matriz dos nomes de classe totalmente qualificados de todos os filtros aplicados ao objeto de exibição. Essa matriz de nomes de filtros é gerada a partir da lista de filtros da interpolação de movimento no Flash. Em sua cópia do script, é possível remover ou adicionar quaisquer filtros no pacote
flash.filters
dessa ou a essa matriz. A chamada a seguir inicializa a lista de filtros para o objeto de exibição de destino. Ela aplica os filtros
DropShadowFilter
,
GlowFilter
e
BevelFilter
e copia a lista para cada quadro-chave no objeto Motion.
__motion_Box.initFilters(["flash.filters.DropShadowFilter", "flash.filters.GlowFilter", "flash.filters.BevelFilter"], [0, 0, 0]);
Adição de filtros
O método
addFilterPropertyArray()
descreve as propriedades de um filtro inicializado com os seguintes argumentos:
-
O primeiro argumento identifica um filtro por índice. O índice refere-se à posição do nome do filtro na matriz de nomes de classes de filtro transferidas em uma chamada anterior de
initFilters()
.
-
O segundo argumento é a propriedade de filtro para armazenamento desse filtro em cada quadro-chave.
-
O terceiro argumento é o valor da propriedade de filtro especificada.
Dada a chamada anterior de
initFilters()
, as chamadas seguintes de
addFilterPropertyArray()
atribuem um valor 5 às propriedades
blurX
e
blurY
de
DropShadowFilter
.
DropShadowFilter
é o primeiro (índice 0) item da matriz dos filtros inicializados:
__motion_Box.addFilterPropertyArray(0, "blurX", [5]);
__motion_Box.addFilterPropertyArray(0, "blurY", [5]);
As três chamadas a seguir atribuem valores às propriedades quality, alpha e color de
GlowFilter,
o segundo item (índice 1) da matriz do filtro inicializado:
__motion_Box.addFilterPropertyArray(1, "quality", [BitmapFilterQuality.LOW]);
__motion_Box.addFilterPropertyArray(1, "alpha", [1.00]);
__motion_Box.addFilterPropertyArray(1, "color", [0xff0000]);
As quatro chamadas a seguir atribuem valores a
shadowAlpha
,
shadowColor
,
highlightAlpha
e
highlightColor
de
BevelFilter
, o terceiro (índice 2) item da matriz de filtros inicializados:
__motion_Box.addFilterPropertyArray(2, "shadowAlpha", [1.00]);
__motion_Box.addFilterPropertyArray(2, "shadowColor", [0x000000]);
__motion_Box.addFilterPropertyArray(2, "highlightAlpha", [1.00]);
__motion_Box.addFilterPropertyArray(2, "highlightColor", [0xffffff]);
Ajuste da cor com ColorMatrixFilter
Após a inicialização de
ColorMatrixFilter
, você poderá definir as propriedades
AdjustColor
adequadas para ajustar o brilho, o contraste, a saturação e a matiz do objeto de exibição interpolado. Em geral, o filtro
AdjustColor
é aplicado quando a interpolação de movimento é criada no Flash; você pode refiná-la em sua cópia do ActionScript. O exemplo a seguir transforma a matiz e a saturação do objeto de exibição à medida que ele se movimenta.
__motion_Leaf_1.initFilters(["flash.filters.ColorMatrix"], [0], -1, -1);
__motion_Leaf_1.addFilterPropertyArray(0, "adjustColorBrightness", [0], -1, -1);
__motion_Leaf_1.addFilterPropertyArray(0, "adjustColorContrast", [0], -1, -1);
__motion_Leaf_1.addFilterPropertyArray(0, "adjustColorSaturation",
[
0,-0.589039,1.17808,-1.76712,-2.35616,-2.9452,-3.53424,-4.12328,
-4.71232,-5.30136,-5.89041, 6.47945,-7.06849,-7.65753,-8.24657,
-8.83561,-9.42465,-10.0137,-10.6027,-11.1918,11.7808,-12.3699,
-12.9589,-13.5479,-14.137,-14.726,-15.3151,-15.9041,-16.4931,
17.0822,-17.6712,-18.2603,-18.8493,-19.4383,-20.0274,-20.6164,
-21.2055,-21.7945,22.3836,-22.9726,-23.5616,-24.1507,-24.7397,
-25.3288,-25.9178,-26.5068,-27.0959,27.6849,-28.274,-28.863,-29.452,
-30.0411,-30.6301,-31.2192,-31.8082,-32.3973,32.9863,-33.5753,
-34.1644,-34.7534,-35.3425,-35.9315,-36.5205,-37.1096,-37.6986,
38.2877,-38.8767,-39.4657,-40.0548,-40.6438,-41.2329,-41.8219,
-42.411,-43
],
-1, -1);
__motion_Leaf_1.addFilterPropertyArray(0, "adjustColorHue",
[
0,0.677418,1.35484,2.03226,2.70967,3.38709,4.06451,4.74193,5.41935,
6.09677,6.77419,7.45161,8.12903,8.80645,9.48387,10.1613,10.8387,11.5161,
12.1935,12.871,13.5484,14.2258,14.9032,15.5806,16.2581,16.9355,17.6129,
18.2903,18.9677,19.6452,20.3226,21,22.4286,23.8571,25.2857,26.7143,28.1429,
29.5714,31,32.4286,33.8571,35.2857,36.7143,38.1429,39.5714,41,42.4286,43.8571,
45.2857,46.7143,48.1429,49.5714,51,54,57,60,63,66,69,72,75,78,81,84,87,
90,93,96,99,102,105,108,111,114
],
-1, -1);
|
|
|