Пакет | spark.effects.animation |
Класс | public class MotionPath |
Наследование | MotionPath Object |
Подклассы | SimpleMotionPath |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
The <s:MotionPath>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<s:MotionPath id="ID" interpolator="NumberInterpolator" keyframes="val" property="val" />
Свойство MXML по умолчаниюkeyframes
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
interpolator : IInterpolator
Интерполятор определяет способ вычисления промежуточных значений в процессе анимации. | MotionPath | ||
keyframes : Vector.<Keyframe>
Последовательность объектов ключевых кадров, представляющих собой пары «время/значение», которые свойство принимает в процессе анимации. | MotionPath | ||
property : String
Имя свойства целевого объекта эффекта, подлежащего анимации. | MotionPath |
Метод | Определено | ||
---|---|---|---|
MotionPath(property:String = null)
Конструктор. | MotionPath | ||
Возвращает копию данного объекта MotionPath, включая копии каждого ключевого кадра. | MotionPath | ||
При задании истекшей доли времени вычисляет и возвращает интерполированное значение. | MotionPath | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object |
interpolator | свойство |
public var interpolator:IInterpolator
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Интерполятор определяет способ вычисления промежуточных значений в процессе анимации. По умолчанию, класс MotionPath предполагает наличие значений типа Number и может автоматически вычислять промежуточные числовые значения. Если для класса MotionPath заданы ключевые кадры с нечисловыми значениями или если для требуемого поведения необходимо использовать иной способ интерполяции (например, интерполяция цвета по каналам), то потребуется предоставить какой-либо интерполятор.
Flex поддерживает предопределенные интерполяторы в пакете spark.effects.interpolation.
keyframes | свойство |
public var keyframes:Vector.<Keyframe>
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Последовательность объектов ключевых кадров, представляющих собой пары «время/значение», которые свойство принимает в процессе анимации. Каждая последовательная пара ключевых кадров управляет анимацией в течение промежутка времени между ними. Дополнительные свойства easer
и valueBy
последнего ключевого кадра используются для определения поведения в течение этого интервала. Последовательность ключевых кадров должна быть отсортирована в порядке увеличения значений времени.
Анимация всегда начинается на значении time=0 и продолжается в течение времени, равного значению time
последнего ключевого кадра. Если ключевой кадр для значения time=0 не определен, то он является неявным и анимация начинается с использованием значения свойства target.
Поскольку ключевые кадры явно задают времена, задействованные в процессе анимации, продолжительность какого-либо эффекта, использующего ключевые кадры, устанавливается в соответствии с максимальным временем последнего ключевого кадра из всех MotionPaths данного эффекта. Например, если для эффекта заданы ключевые кадры со значениями времени, равными 0, 500, 1000 и 2000, то эффективная продолжительность этого эффекта будет 2000 мс, независимо от того, какое значение установлено для свойства данного эффекта duration
. Поскольку последний ключевой кадр определяет продолжительность, то он должен присутствовать в любом MotionPath. Таким образом, продолжительность MotionPath задается неявно значением времени последнего ключевого кадра.
Значение value
любого ключевого кадра может остаться неопределенным (незаданным, либо со значением null
, либо со значением NaN
). В этом случае, значение value определяется динамически при запуске анимации. Любое неопределенное значение определяется следующим образом.
- В случае если это первый ключевой кадр, то значение вычисляется из следующего ключевого кадра, если таковой имеет заданные значения
value
иvalueBy
; при этом вычисляемое значение будет разницей значений value и valueBy. В противном случае ему присваивается текущее значение свойства целевого объекта. - В случае если это последний ключевой кадр и анимация выполняется в процессе перехода, то используется значение состояния представления целевого объекта перехода.
- В противном случае, значение
value
любого ключевого кадра вычисляется путем добавления значенияvalue
предыдущего ключевого кадра к значениюvalueBy
текущего, если значениеvalueBy
задано.
Связанные элементы API
property | свойство |
public var property:String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Имя свойства целевого объекта эффекта, подлежащего анимации.
MotionPath | () | Конструктор |
clone | () | метод |
public function clone():MotionPath
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Возвращает копию данного объекта MotionPath, включая копии каждого ключевого кадра.
ВозвращаетMotionPath — Копия данного объекта MotionPath, включая копии каждого ключевого кадра.
|
getValue | () | метод |
public function getValue(fraction:Number):Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
При задании истекшей доли времени вычисляет и возвращает интерполированное значение. Функция определяет интервал ключевого кадра, в который попадает эта доля, и выполняет интерполяцию в пределах этого интервала между значениями граничных ключевых кадров данного интервала.
Параметры
fraction:Number — Доля полной продолжительности эффекта (значение от 0,0 до 1,0).
|
Object — Интерполированное значение.
|
<?xml version="1.0"?> <!-- Simple example to demonstrate the s:Keyframe and s:MotionPath classes. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"> <fx:Declarations> <fx:Vector id="kf" type="spark.effects.animation.MotionPath"> <s:MotionPath property="scaleX"> <s:Keyframe time="250" value="0.5"/> <s:Keyframe time="500" value="1.0"/> <s:Keyframe time="750" value="0.5"/> <s:Keyframe time="1000" value="1.0"/> <s:Keyframe time="1250" value="0.5"/> <s:Keyframe time="1500" value="1.0"/> </s:MotionPath> <s:MotionPath property="scaleY"> <s:Keyframe time="250" value="0.5"/> <s:Keyframe time="500" value="1.0"/> <s:Keyframe time="750" value="0.5"/> <s:Keyframe time="1000" value="1.0"/> <s:Keyframe time="1250" value="0.5"/> <s:Keyframe time="1500" value="1.0"/> </s:MotionPath> </fx:Vector> <s:Animate id="shrinkEffect" motionPaths="{kf}" target="{myImage}"/> </fx:Declarations> <s:Panel id="examplePanel" title="Keyframe and MotionPath Effect Example" width="75%" height="75%"> <s:layout> <s:VerticalLayout paddingTop="10" paddingLeft="10"/> </s:layout> <!-- Directions --> <s:VGroup id="detailsBox" width="50%" left="0"> <s:Label width="99%" color="blue" text="Click the Adobe logo to watch the effect."/> </s:VGroup> <mx:Image id="myImage" source="@Embed(source='assets/logo.jpg')" click="shrinkEffect.end();shrinkEffect.play();"/> </s:Panel> </s:Application>
Tue Jun 12 2018, 11:34 AM Z