Guide de référence ActionScript® 3.0 pour la plate-forme Adobe® Flash®
Accueil  |  Masquer la liste des packages et des classes |  Packages  |  Classes  |  Nouveautés  |  Index  |  Annexes  |  Pourquoi existe-t-il du contenu en anglais ?
Filtres : Récupération des données du serveur...
Récupération des données du serveur...
spark.effects.animation 

Keyframe  - AS3 Flex

Packagespark.effects.animation
Classepublic class Keyframe
HéritageKeyframe Inheritance Object

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

La classe Keyframe définit la valeur d’une propriété à un instant précis au cours d’un effet. Vous pouvez par exemple créer trois images-clés définissant la valeur d’une propriété au début de l’effet, au milieu de l’effet et à la fin de l’effet. L’effet anime la modification de la propriété sur la cible entre les images-clés, pendant toute la durée de l’effet.

La collection des images-clés d’un effet est appelée trajectoire de mouvement. Une trajectoire de mouvement peut définir un nombre illimité d’images-clés. L’effet calcule alors la valeur de la propriété par interpolation, à partir des valeurs spécifiées par deux images-clés.

Utilisez la classe MotionPath pour stocker la collection d’objets KeyFrame représentant la trajectoire de mouvement de l’effet. La classe MotionPath spécifie le nom de la propriété sur la cible. La collection d’objets KeyFrame spécifie quant à elle les valeurs de la propriété à différents moments de l’effet.

Syntaxe MXMLexpandedMasquer la syntaxe MXML

The <s:Keyframe> tag inherits the tag attributes of its superclass, and adds the following tag attributes:

  <s:Keyframe 
    id="ID"
    easier="Linear"
    time="val"
    value="val"
    valueBy="val"
  />
  

Consulter les exemples

Eléments de l’API associés



Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet.
Object
  easer : IEaser
Comportement d’accélération appliqué au mouvement entre l’objet KeyFrame précédent dans la trajectoire de mouvement et cet objet KeyFrame.
Keyframe
  time : Number
Position temporelle, en millisecondes, à laquelle la cible d’effet de cette image-clé doit prendre la valeur spécifiée par la propriété value.
Keyframe
  value : Object
Valeur de la propriété de la cible de l’effet à la position temporelle spécifiée par la propriété time.
Keyframe
  valueBy : Object
Paramètre facultatif qui, le cas échéant, est utilisé pour calculer la valeur value au niveau de cette image-clé ou de l’image-clé précédente.
Keyframe
Méthodes publiques
 MéthodeDéfini par
  
Keyframe(time:Number = NaN, value:Object = null, valueBy:Object = null)
Constructeur.
Keyframe
  
Renvoie une copie de cet objet KeyFrame.
Keyframe
 Inherited
Indique si la propriété spécifiée d’un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre.
Object
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l’objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l’objet spécifié.
Object
Détails de la propriété

easer

propriété
public var easer:IEaser

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Comportement d’accélération appliqué au mouvement entre l’objet KeyFrame précédent dans la trajectoire de mouvement et cet objet KeyFrame. Par défaut, l’accélération est linéaire ou aucune accélération n’est appliquée.

Il est également possible qu’une accélération soit déjà appliquée à l’effet parent sur toute la durée de l’animation. Par conséquent, si vous préférez réaliser une animation par intervalle d’image-clé, il est nécessaire de définir l’accélérateur global de l’effet sur linéaire (spark.effects.easing.Linear), puis de définir le paramètre easer pour chaque image-clé Keyframe requise.

Cette propriété agissant sur l’intervalle situé entre l’objet KeyFrame précédent dans la séquence et cet objet KeyFrame, la propriété easer est ignorée pour le premier objet KeyFrame d’une séquence.

La valeur par défaut est Linear.

time

propriété 
public var time:Number

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Position temporelle, en millisecondes, à laquelle la cible d’effet de cette image-clé doit prendre la valeur spécifiée par la propriété value. La position temporelle est relative à la position temporelle de départ de l’effet défini par cette image-clé.

value

propriété 
public var value:Object

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Valeur de la propriété de la cible de l’effet à la position temporelle spécifiée par la propriété time.

valueBy

propriété 
public var valueBy:Object

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Paramètre facultatif qui, le cas échéant, est utilisé pour calculer la valeur value au niveau de cette image-clé ou de l’image-clé précédente. Si la valeur value n’est pas définie pour l’image-clé précédente, mais que cette image-clé définit à la fois value et valueBy, alors la valeur value de l’image-clé précédente est calculée en soustrayant la valeur valueBy de l’image-clé de sa valeur value.

De même, si la valeur value de cette image-clé n’est pas définie, mais que la valeur valueBy de cette image-clé et la valeur value de l’image-clé précédente sont toutes deux définies, alors la valeur value de cette image-clé est calculée en ajoutant la valeur value de l’image-clé précédente à la valeur valueBy de cette image-clé.

La valeur valueBy est ignorée pour la première image-clé d’une séquence, car elle s’applique uniquement à l’intervalle précédent une image-clé et qu’il n’existe pas d’intervalle précédent pour la première image-clé.

Détails du constructeur

Keyframe

()Constructeur
public function Keyframe(time:Number = NaN, value:Object = null, valueBy:Object = null)

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Constructeur.

Paramètres
time:Number (default = NaN) — Position temporelle, en millisecondes, à laquelle la cible d’effet de cette image-clé doit prendre la valeur spécifiée par le paramètre value.
 
value:Object (default = null) — Valeur de la cible de l’effet à la position temporelle time spécifiée.
 
valueBy:Object (default = null) — Paramètre facultatif. S’il est défini, la valeur value est calculée de façon dynamique en ajoutant la valeur valueBy à la valeur value de l’image-clé précédente dans l’ensemble d’images-clés d’un objet MotionPath. Cette valeur est ignorée s’il s’agit de la première image-clé d’une séquence.
Détails de la méthode

clone

()méthode
public function clone():Keyframe

Version du langage: ActionScript 3.0
Version du produit: Flex 4
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Renvoie une copie de cet objet KeyFrame.

Valeur renvoyée
Keyframe — Copie de cet objet KeyFrame.
KeyFrameEffectExample.mxml
<?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>




[ X ]Pourquoi existe-t-il du contenu en anglais ?
Certaines parties du Guide de référence ActionScript 3.0 sont en anglais

Tout le contenu du Guide de référence ActionScript 3.0 n’a pas été traduit dans toutes les langues. Si un élément de langage n’est pas traduit, il s’affiche en anglais. Par exemple, la classe ga.controls.HelpBox n’est traduite dans aucune langue. Ainsi, dans la version française du guide de référence, la classe ga.controls.HelpBox apparaît en anglais.