Si l’objet cible d’une interpolation de mouvement contient des filtres, ces derniers sont ajoutés par le biais des méthodes
initFilters()
et
addFilterPropertyArray()
de la classe Motion.
Initialisation du tableau de filtres
La méthode
initFilters()
initialise les filtres. Son premier argument est un tableau qui recense les noms de classe entièrement qualifiés de tous les filtres appliqués à l’objet d’affichage. Ce tableau de noms de filtre est généré à partir de la liste de filtres associée à l’interpolation de mouvement dans Flash. Dans votre copie du script, vous pouvez supprimer ou ajouter dans ce tableau n’importe quel filtre du package
flash.filters
. L’appel suivant initialise la liste de filtres associée à l’objet d’affichage cible. Il applique les filtres
DropShadowFilter
,
GlowFilter
et
BevelFilter
et copie la liste dans chaque image-clé de l’objet Motion.
__motion_Box.initFilters(["flash.filters.DropShadowFilter", "flash.filters.GlowFilter", "flash.filters.BevelFilter"], [0, 0, 0]);
Ajout de filtres
La méthode
addFilterPropertyArray()
décrit les propriétés d’un filtre initialisé doté des arguments suivants :
-
Son premier argument identifie un filtre en fonction de son index. L’index se réfère à la position du nom de filtre dans le tableau des noms de classe de filtre transmis lors d’un appel précédent d’
initFilters()
.
-
Le deuxième argument est la propriété à stocker pour le filtre dans chaque image-clé.
-
Le troisième argument est la valeur de la propriété de filtre indiquée.
Etant donné l’appel précédent d’
initFilters()
, les appels suivants de
addFilterPropertyArray()
affectent la valeur 5 aux propriétés
blurX
et
blurY
de
DropShadowFilter
.
DropShadowFilter
est le premier élément (index 0)du tableau de filtres initialisés :
__motion_Box.addFilterPropertyArray(0, "blurX", [5]);
__motion_Box.addFilterPropertyArray(0, "blurY", [5]);
Les trois appels suivants affectent des valeurs aux propriétés qualité, alpha et couleur de
GlowFilter
(le deuxième élément (index 1) du tableau de filtres initialisés) :
__motion_Box.addFilterPropertyArray(1, "quality", [BitmapFilterQuality.LOW]);
__motion_Box.addFilterPropertyArray(1, "alpha", [1.00]);
__motion_Box.addFilterPropertyArray(1, "color", [0xff0000]);
Les quatre appels suivants affectent des valeurs aux propriétés
shadowAlpha
,
shadowColor
,
highlightAlpha
et
highlightColor
de
BevelFilter
, le troisième élément (index 2) du tableau de filtres initialisés :
__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]);
Réglage de la couleur à l’aide de ColorMatrixFilter
Une fois
ColorMatrixFilter
initialisé, vous pouvez définir les propriétés
AdjustColor
appropriées pour régler la luminosité, le contraste, la saturation et la teinte de l’objet d’affichage interpolé. En règle générale, le filtre
AdjustColor
est appliqué lors de la génération de l’interpolation de mouvement dans Flash. Vous pouvez l’ajuster dans votre copie du code ActionScript. L’exemple suivant transforme la teinte et la saturation de l’objet d’affichage au fur et à mesure qu’il se déplace.
__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);
|
|
|