Lägga till filter

Flash Player 9 och senare, Adobe AIR 1.0 och senare, kräver Flash CS3 eller senare

Om målobjektet i en rörelseinterpolering innehåller filter läggs dessa filter till med metoderna initFilters() och addFilterPropertyArray() i klassen Motion.

Initiera filterarrayen

Metoden initFilters() initierar filtren. Dess första argument är en array med fullständiga klassnamn för alla filter som tillämpas på visningsobjektet. Den här arrayen med filternamn skapas utifrån filterlistan för rörelseinterpoleringen i Flash. I din kopia av skriptet kan du ta bort eller lägga till något av filtren i flash.filters-paketen i den här arrayen. Följande anrop initierar filterlistan för målvisningsobjektet. Det tillämpar DropShadowFilter, GlowFilter och BevelFilter och kopierar listan till alla nyckelrutor i Motion-objektet.
__motion_Box.initFilters(["flash.filters.DropShadowFilter", "flash.filters.GlowFilter", "flash.filters.BevelFilter"], [0, 0, 0]);

Lägga till filter

Metoden addFilterPropertyArray() beskriver egenskaperna för ett initierat filter med följande argument:
  1. Det första argumentet identifierar ett filter utifrån index. Indexet refererar till den del av filnamnet i arrayen med filterklassnamn som har skickats i ett tidigare anrop till initFilters().

  2. Det andra argumentet är filteregenskapen som ska lagras för filtret i respektive nyckelruta.

  3. Det tredje argumentet är värden på angiven filteregenskap.

Utifrån föregående anrop till initFilters() tilldelar följande anrop till addFilterPropertyArray() värdet 5 till egenskaperna blurX och blurY för DropShadowFilter. DropShadowFilter är det första (index 0) objektet i den initierade filterarrayen:
__motion_Box.addFilterPropertyArray(0, "blurX", [5]); 
__motion_Box.addFilterPropertyArray(0, "blurY", [5]);
Nästa tre anrop tilldelar värden till kvalitets-, alfa- och färgegenskaperna för GlowFilter, det andra objektet (index 1) i den initierade filterarrayen:
__motion_Box.addFilterPropertyArray(1, "quality", [BitmapFilterQuality.LOW]); 
__motion_Box.addFilterPropertyArray(1, "alpha", [1.00]); 
__motion_Box.addFilterPropertyArray(1, "color", [0xff0000]);
Nästa fyra anrop tilldelar värden till shadowAlpha, shadowColor, highlightAlpha och highlightColor för BevelFilter, det tredje (index 2) objektet i den initierade filterarrayen:
__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]);

Justera färg med ColorMatrixFilter

När ColorMatrixFilter har initierats kan du ange lämpliga AdjustColor-egenskaper om du vill justera intensitet, kontrast, mättnad och nyans för det interpolerade visningsobjektet. Filtret AdjustColor används vanligtvis när rörelseinterpoleringen skapas i Flash, och du kan finjustera det i din kopia av ActionScript-koden. Följande exempel omformar nyans och mättnad för visningsobjektet allt eftersom det rör sig.

__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);