La méthode
addPropertyArray()
de la classe MotionBase ajoute un tableau de valeurs pour décrire chaque propriété interpolée.
Le tableau contient potentiellement un élément par image-clé de l’interpolation de mouvement. Il arrive souvent que certains de ces tableaux contiennent moins d’éléments que le nombre total d’images-clés de l’interpolation de mouvement. Ce cas de figure se produit lorsque la dernière valeur du tableau n’est pas modifiée pour les images restantes.
Si la longueur de l’argument array est supérieure à celle de la propriété
duration
de l’objet Motion, la méthode
addPropertyArray()
ajuste en conséquence la valeur de la propriété
duration
. Elle n’ajoute pas d’image-clé pour les propriétés précédemment ajoutées. Les nouvelles images-clés subsistent pendant la durée des images supplémentaires de l’animation.
Les propriétés
x
et
y
de l’objet Motion décrivent la nouvelle position de l’objet interpolé au fur et à mesure de l’exécution de l’animation. Ces coordonnées correspondent aux valeurs les plus susceptibles de changer dans chaque image-clé si la position de l’objet d’affichage évolue. La méthode
addPropertyArray()
vous permet d’ajouter d’autres propriétés de mouvement. Par exemple, ajoutez les valeurs
scaleX
et
scaleY
si l’objet interpolé est redimensionné. Ajoutez les valeurs
skewX
et
skewY
s’il est incliné. Ajoutez la propriété
rotationConcat
s’il fait l’objet d’une rotation.
Utilisez la méthode
addPropertyArray()
pour définir les propriétés d’interpolation suivantes :
x
|
Position horizontale du point de transformation de l’objet dans l’espace de coordonnées de son objet parent
|
y
|
Position verticale du point de transformation de l’objet dans l’espace de coordonnées de son objet parent
|
z
|
Position de profondeur (axe z) du point de transformation de l’objet dans l’espace de coordonnées de son objet parent
|
scaleX
|
Redimensionnement horizontal, exprimé sous forme de pourcentage de l’objet tel qu’il est appliqué à partir du point de transformation
|
scaleY
|
Redimensionnement vertical, exprimé sous forme de pourcentage de l’objet tel qu’il est appliqué à partir du point de transformation
|
skewX
|
Angle d’inclinaison horizontale de l’objet, en degrés, tel qu’il est appliqué à partir du point de transformation
|
skewY
|
Angle d’inclinaison verticale de l’objet, en degrés, tel qu’il est appliqué à partir du point de transformation
|
rotationX
|
Rotation de l’objet autour de l’axe x à partir de son orientation d’origine
|
rotationY
|
Rotation de l’objet autour de l’axe y à partir de son orientation d’origine
|
rotationConcat
|
Valeurs de rotation (axe z) de l’objet dans le cadre du mouvement par rapport à l’orientation précédente appliquée à partir du point de transformation
|
useRotationConcat
|
Si cette propriété est définie, elle entraîne la rotation de l’objet cible lorsque la méthode
addPropertyArray()
fournit des données de mouvement.
|
blendMode
|
Valeur de la classe BlendMode qui définit le mélange de couleurs de l’objet sous lequel figurent les graphiques
|
matrix3D
|
Propriété matrix3D si elle a été définie pour l’image-clé. Réservée aux interpolations 3D. Si elle est utilisée, aucune des propriétés de transformation précédentes n’est prise en considération.
|
rotationZ
|
Rotation (en degrés) autour de l’axe z de l’objet, à partir de son orientation d’origine par rapport au conteneur parent 3D. Utilisé pour les interpolations 3D au lieu de rotationConcat.
|
Les propriétés ajoutées au script automatiquement généré varient selon les propriétés affectées à l’interpolation de mouvement dans Flash. Vous pouvez ajouter, supprimer ou modifier certaines de ces propriétés lorsque vous personnalisez votre version du script.
Le code suivant affecte des valeurs aux propriétés de l’interpolation de mouvement
__motion_Wheel.
Dans ce cas de figure, l’objet d’affichage interpolé ne change pas d’emplacement, mais pivote sur place dans les 29 images de l’interpolation de mouvement. Les diverses valeurs affectées au tableau
rotationConcat
définissent la rotation. Les autres valeurs de propriété de cette interpolation de mouvement ne sont pas modifiées.
__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"]);
Dans l’exemple suivant, l’objet d’affichage
Leaf_1
traverse la scène. Les tableaux de propriétés
x
et
y
correspondants contiennent des valeurs différentes pour chacune des 100 images de l’animation. Par ailleurs, l’objet pivote sur son axe
z
au fur et à mesure qu’il traverse la scène. Les divers éléments du tableau de la propriété
rotationZ
déterminent la rotation.
__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"]);