| Пакет | spark.effects.animation |
| Класс | public class MotionPath |
| Наследование | MotionPath Object |
| Подклассы | SimpleMotionPath |
| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 4 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Скрыть синтаксис MXMLThe <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
Показать синтаксис MXML