O método
addPropertyArray()
da classe MotionBase adiciona uma matriz de valores para descrever cada propriedade interpolada.
Potencialmente, a matriz contém um item para cada quadro-chave na interpolação de movimento. Em geral, algumas dessas matrizes contêm uma quantidade de itens menor do que o número total de quadros-chave na interpolação de movimento. Essa situação ocorre quando o último valor da matriz não é alterado nos quadros restantes.
Se o comprimento do argumento da matriz for maior do que a propriedade
duration
do objeto Motion,
addPropertyArray()
fará o ajuste do valor da propriedade
duration
de modo adequado. Ela não adiciona quadros-chave às propriedades que foram adicionadas anteriormente. Os quadros-chave recém-adicionados permanecem nos quadros extras da animação.
As propriedades
x
e
y
do objeto Motion descrevem a mudança de posição do objeto interpolado no decorrer da execução da animação. Essas coordenadas são os valores que apresentam maior possibilidade de mudança em cada quadro-chave, se a posição do objeto de exibição for alterada. Você pode adicionar propriedades de movimento adicionais com o método
addPropertyArray()
. Por exemplo, adicione os valores
scaleX
e
scaleY
se o objeto interpolado estiver redimensionado. Adicione os valores
cewX
e
skewY
se ele estiver inclinado. Adicione a propriedade
rotationConcat
se ele estiver em rotação.
Use o método
addPropertyArray()
para definir as seguintes propriedades de interpolação:
x
|
Posição horizontal do ponto de transformação do objeto no espaço coordenado de seu objeto pai.
|
y
|
Posição vertical do ponto de transformação do objeto no espaço coordenado de seu objeto pai.
|
z
|
Posição de profundidade (eixo z) do ponto de transformação do objeto no espaço coordenado de seu objeto pai.
|
scaleX
|
Escala horizontal como uma porcentagem do objeto, como aplicada a partir do ponto de transformação.
|
scaleY
|
Escala vertical como porcentagem do objeto, como aplicada a partir do ponto de transformação.
|
skewX
|
Ângulo de inclinação horizontal do objeto em graus, como aplicado a partir do ponto de transformação.
|
skewY
|
Ângulo de inclinação vertical do objeto em graus, como aplicado a partir do ponto de transformação.
|
rotationX
|
Rotação do objeto ao redor do eixo x, a partir de sua orientação original.
|
rotationY
|
Rotação do objeto ao redor do eixo y, a partir de sua orientação original.
|
rotationConcat
|
Valores de rotação (eixo z) do objeto no movimento relacionado à orientação anterior, como aplicados a partir do ponto de transformação.
|
useRotationConcat
|
Se definido, faz com que o objeto de destino gire quando
addPropertyArray()
fornecer dados de movimento.
|
blendMode
|
Valor da classe BlendMode especificando a mistura de cores de um objeto com gráficos abaixo.
|
matrix3D
|
Propriedade matrix3D, caso haja alguma no quadro-chave (usada em interpolações em 3D). Se usada, todas as propriedades de transformação anteriores serão ignoradas.
|
rotationZ
|
Rotação do eixo z do objeto, em graus, a partir da sua orientação original referente ao contêiner 3D pai. Usado em interpolações em 3D no lugar de rotationConcat.
|
As propriedades adicionadas ao script gerado automaticamente dependem das propriedades que foram atribuídas à interpolação de movimento no Flash. Você pode adicionar, remover ou modificar algumas dessas propriedades ao personalizar a sua versão do script.
O código a seguir atribui valores às propriedades de uma interpolação de movimento chamada
__motion_Wheel.
Nesse caso, o objeto de exibição interpolado não muda de lugar, mas gira na mesma posição nos 29 quadros da interpolação de movimento. Os valores múltiplos atribuídos à matriz
rotationConcat
definem a rotação. Os outros valores de propriedades dessa interpolação de movimento não são alterados.
__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"]);
No exemplo a seguir, o objeto de exibição chamado
Leaf_1
se move no palco. Suas matrizes de propriedade
x
e
y
contêm valores diferentes para cada um dos 100 quadros da animação. Além disso, o objeto gira em torno de seu eixo
z
ao mesmo tempo em que se move pelo palco. Os itens múltiplos da matriz de propriedade
rotationZ
determinam a rotação.
__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"]);