Descripción de la animación

Flash Player 9 y posterior, Adobe AIR 1.0 y posterior, requiere Flash CS3 o posterior

El método addPropertyArray() de la clase MotionBase añade un conjunto de valores para describir cada propiedad interpolada.

Potencialmente, el conjunto contiene un elemento de conjunto en cada fotograma clave de la interpolación de movimiento. A menudo, algunos conjuntos contienen menos elementos que el número total de fotogramas clave de la interpolación de movimiento. Esta situación se produce cuando el último valor del conjunto no cambia en los fotogramas restantes.

Si la longitud del argumento del conjunto es superior a la propiedad duration del objeto Motion, addPropertyArray() ajusta el valor de la propiedad duration en consecuencia. No añade fotogramas clave a las propiedades añadidas previamente. Los fotogramas clave recién añadidos se conservan en los fotogramas adicionales de la animación.

Las propiedades x e y del objeto Motion describen la posición variable del objeto interpolado a medida que se ejecuta la animación. Estas coordenadas son los valores que, con toda probabilidad, cambiarán en cada fotograma clave si cambia la posición del objeto de visualización. Puede añadir propiedades de movimiento adicionales con el método addPropertyArray() . Por ejemplo, puede añadir los valores scaleX y scaleY si el objeto interpolado cambia de tamaño. Añada los valores s cewX y skewY si se sesga. Añada la propiedad rotationConcat si se gira.

Utilice el método addPropertyArray() para definir las siguientes propiedades de interpolación:

x

posición horizontal del punto de transformación del objeto en el espacio de coordenadas de su elemento principal

y

posición vertical del punto de transformación del objeto en el espacio de coordenadas de su elemento principal

z

posición de profundidad (eje z) del punto de transformación del objeto en el espacio de coordenadas de su elemento principal

scaleX

escala horizontal (en forma de porcentaje) del objeto aplicada desde el punto de transformación

scaleY

escala vertical (en forma de porcentaje) del objeto aplicada desde el punto de transformación

skewX

ángulo de sesgado horizontal (en grados) del objeto de destino aplicado desde el punto de transformación

skewY

ángulo de sesgado vertical (en grados) del objeto de destino aplicado desde el punto de transformación

rotationX

rotación del objeto alrededor del eje x desde su orientación original

rotationY

rotación del objeto alrededor del eje y desde su orientación original

rotationConcat

valores de rotación (eje z) del objeto en el movimiento relativo a la orientación anterior (según se aplica desde el punto de transformación)

useRotationConcat

si se establece, hace que el objeto de destino gire cuando addPropertyArray() proporciona datos de movimiento

blendMode

valor de la clase BlendMode que especifica la mezcla de colores del objeto con gráficos subyacentes

matrix3D

propiedad matrix3D (si existe en el fotograma clave). Se utiliza para interpolaciones 3D; si se usa, todas las propiedades de transformación anteriores se omiten

rotationZ

rotación del objeto alrededor del eje z (en grados) desde su orientación original relativa al contendor principal 3D. Se utiliza en interpolaciones 3D para sustituir a rotationConcat

Las propiedades que se añaden en el script generado automáticamente dependen de las propiedades asignadas a la interpolación de movimiento en Flash. Es posible añadir, eliminar o modificar algunas de estas propiedades al personalizar su propia versión del script.

El siguiente código asigna valores a las propiedades de una interpolación de movimiento llamada __motion_Wheel. En este caso, el objeto de visualización interpolado no cambia de posición, sino que gira sobre sí mismo en los 29 fotogramas de la interpolación de movimiento. Los diversos valores asignados al conjunto rotationConcat definen la rotación. El resto de valores de las propiedades de la interpolación de movimiento no varían.

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

En el siguiente ejemplo, el objeto de visualización llamado Leaf_1 se mueve por el escenario. Sus conjuntos de propiedades x e y contienen distintos valores en cada uno de los 100 fotogramas de la animación. Además, el objeto gira alrededor de su eje z a medida que se mueve por el escenario. Los distintos elementos del conjunto de la propiedad rotationZ determinan la rotación.

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