Animaties beschrijvenFlash Player 9 of hoger, Adobe AIR 1.0 of hoger, vereist Flash CS3 of hoger De methode addPropertyArray() van de klasse MotionBase voegt een array van waarden toe om elke eigenschap met tweening te beschrijven. Mogelijk bevat de array één arrayitem voor elk hoofdframe in de bewegingstween. Dikwijls bevatten sommige arrays minder items dan het totale aantal hoofdframes in de bewegingstween. Deze situatie doet zich voor wanneer de laatste waarde in de array niet verandert voor de overige frames. Als de lengte van het arrayargument groter is dan de eigenschap duration van het Motion-object, past addPropertyArray() de waarde van de eigenschap duration dienovereenkomstig aan. Deze methode voegt geen hoofdframes toe voor de eigenschappen die eerder zijn toegevoegd. De zojuist toegevoegde hoofdframes blijven aanwezig in de extra frames van de animatie. De eigenschappen x en y van het Motion-object beschrijven de veranderende positie van het getweende object terwijl de animatie wordt uitgevoerd. Deze coördinaten zijn de waarden die het meest waarschijnlijk in elk hoofdframe veranderen als de positie van het weergaveobject verandert. U kunt extra bewegingseigenschappen toevoegen met de methode addPropertyArray(). Voeg bijvoorbeeld de waarden scaleX en scaleY toe als het formaat van het getweende object wordt gewijzigd. Voeg de waarden skewX en skewY toe als het object wordt scheefgetrokken. Voeg de eigenschap rotationConcat toe als het object wordt geroteerd. Gebruik de methode addPropertyArray() om de volgende tweeneigenschappen te definiëren:
Welke eigenschappen in het automatisch gegenereerde script worden toegevoegd, is afhankelijk van de eigenschappen die in Flash aan de bewegingstween zijn toegewezen. U kunt bepaalde eigenschappen toevoegen, verwijderen of wijzigen wanneer u uw eigen versie van het script aanpast. De volgende code wijst waarden toe aan de eigenschappen van de bewegingstween __motion_Wheel. In dit geval verandert de locatie van het getweende weergaveobject niet, maar draait het object ter plekke rond door de 29 frames van de bewegingstween te doorlopen. De waarden die aan de array rotationConcat zijn toegewezen, bepalen de rotatie. De andere eigenschapwaarden van deze bewegingstween veranderen niet. __motion_Wheel = new Motion();
__motion_Wheel.duration = 29;
__motion_Wheel.addPropertyArray("x", [0]);
__motion_Wheel.addPropertyArray("y", [0]);
__motion_Wheel.addPropertyArray("scaleX", [1.00]);
__motion_Wheel.addPropertyArray("scaleY", [1.00]);
__motion_Wheel.addPropertyArray("skewX", [0]);
__motion_Wheel.addPropertyArray("skewY", [0]);
__motion_Wheel.addPropertyArray("rotationConcat",
[
0,-13.2143,-26.4285,-39.6428,-52.8571,-66.0714,-79.2857,-92.4999,-105.714,
-118.929,-132.143,-145.357,-158.571,-171.786,-185,-198.214,-211.429,-224.643,
-237.857,-251.071,-264.286,-277.5,-290.714,-303.929,-317.143,-330.357,
-343.571,-356.786,-370
]
);
__motion_Wheel.addPropertyArray("blendMode", ["normal"]);
In het volgende voorbeeld verplaatst het weergaveobject met de naam Leaf_1 zich over het werkgebied. De arrays met de eigenschappen x en y bevatten verschillende waarden voor elk van de 100 frames in de animatie. Daarnaast draait het object om zijn z-as terwijl het over het werkgebied wordt verplaatst. De items in de array met rotationZ-eigenschappen bepalen de rotatie. __motion_Leaf_1 = new MotionBase();
__motion_Leaf_1.duration = 100;
__motion_Symbol1_4.addPropertyArray("y",
[
0,5.91999,11.84,17.76,23.68,29.6,35.52,41.44,47.36,53.28,59.2,65.12,71.04,
76.96,82.88,88.8,94.72,100.64,106.56,112.48,118.4,124.32,130.24,136.16,142.08,
148,150.455,152.909,155.364,157.818,160.273,162.727,165.182,167.636,170.091,
172.545,175,177.455,179.909,182.364,184.818,187.273,189.727,192.182,194.636,
197.091,199.545,202,207.433,212.865,218.298,223.73,229.163,234.596,240.028,
245.461,250.893,256.326,261.759,267.191,272.624,278.057,283.489,
288.922,294.354,299.787,305.22,310.652,316.085,321.517,326.95,330.475,334,
337.525,341.05,344.575,348.1,351.625,355.15,358.675,362.2,365.725,369.25,
372.775,376.3,379.825,383.35,386.875,390.4,393.925,397.45,400.975,404.5,
407.5,410.5,413.5,416.5,419.5,422.5,425.5
]
);
__motion_Symbol1_4.addPropertyArray("scaleX", [1.00]);
__motion_Symbol1_4.addPropertyArray("scaleY", [1.00]);
__motion_Symbol1_4.addPropertyArray("skewX", [0]);
__motion_Symbol1_4.addPropertyArray("skewY", [0]);
__motion_Symbol1_4.addPropertyArray("z",
[
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
]
);
__motion_Symbol1_4.addPropertyArray("rotationX", [64.0361]);
__motion_Symbol1_4.addPropertyArray("rotationY", [41.9578]);
__motion_Symbol1_4.addPropertyArray("rotationZ",
[
-18.0336,-17.5536,-17.0736,-16.5936,-16.1136,-15.6336,-15.1536,-14.6736,
-14.1936,-13.7136,-13.2336,-12.7536,-12.2736,-11.7936,-11.3136,-10.8336,
-10.3536,-9.8736,-9.3936,-8.9136,-8.4336,-7.9536,-7.4736,-6.9936,-6.5136,
-6.0336,-7.21542,-8.39723,-9.57905,-10.7609,-11.9427,-13.1245,-14.3063,
-15.4881,-16.67,-17.8518,-19.0336,-20.2154,-21.3972,-22.5791,-23.7609,
-24.9427,-26.1245,-27.3063,-28.4881,-29.67,-30.8518,-32.0336,-31.0771,
-30.1206,-29.164,-28.2075,-27.251,-26.2945,-25.338,-24.3814,-23.4249,
-22.4684,-21.5119,-20.5553,-19.5988,-18.6423,-17.6858,-16.7293,-15.7727
-14.8162,-13.8597,-12.9032,-11.9466,-10.9901,-10.0336,-10.9427,-11.8518,
-12.7609,-13.67,-14.5791,-15.4881,-16.3972,-17.3063,-18.2154,-19.1245,
-20.0336,-20.9427,-21.8518,-22.7609,-23.67,-24.5791,-25.4881,-26.3972,
-27.3063,-28.2154,-29.1245,-30.0336,-28.3193,-26.605,-24.8907,-23.1765,
-21.4622,-19.7479,-18.0336
]
);
__motion_Symbol1_4.addPropertyArray("blendMode", ["normal"]);
|
|