<s:AnimateTransform>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransform Properties id="ID" applyChangesPostLayout="true" applyLocalProjection="false" autoCenterProjection="true" fieldOfView="no default" focalLength="no default" projectionX="0" projectionY="0" removeLocalProjectionWhenComplete="false" />]]>
Comme avec l’effet AnimateTransform, il existe certaines propriétés de cet effet qui sont partagés avec tous les autres effets de transformation qui sont combinées avec l’exécution. En particulier, les propriétés liées à la projection
Les effets 3D fonctionnant par la mise en correspondance d’une image en trois dimensions sur une représentation en deux dimensions pour un affichage sur un écran d’ordinateur. Le point de projection définit le centre du champ d’affichage et contrôle la façon dont la cible est projetée de trois dimensions sur l’écran.
Cette propriété est uniquement utilisée lorsque la projection
Une valeur proche de
Une valeur proche de
Cette propriété est uniquement utilisée lorsque la projection
Cette propriété est uniquement utilisée lorsque la projection
Cette propriété est uniquement utilisée lorsque la projection
Cette propriété est uniquement utilisée lorsque la projection
Cette propriété est uniquement utilisée lorsque la projection
<s:AnimateTransitionShader>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransitionShader Properties id="ID" bitmapFrom="no default" bitmapTo="no default" shaderByteCode="no default" sahderProperties="no default" />]]>
L’animation est réalisée en exécutant un programme pixel shader, spécifié par la propriété
Si l’une des deux images bitmap n’est pas fournie, cette valeur est déterminée de façon dynamique, soit à partir de l’état approprié de la cible dans le cas d’une transition, soit directement à partir de la cible si l’effet ne fait pas partie d’une transition. Si l’effet fait partie d’une transition et que l’objet cible disparaît ou apparaît pendant ce changement d’état, une image bitmap entièrement transparente est utilisée pour représenter l’objet manquant.
Cet effet peut uniquement être exécuté sur des cibles de type UIComponent ou GraphicElement, car l’acquisition de l’image bitmap de l’objet nécessite de disposer d’informations sur l’objet qui sont présentes uniquement dans ces classes.
Comme l’effet s’appuie sur des images bitmap et que le programme pixel shader sous-jacent suppose que la taille des deux images est identique, l’effet fonctionne correctement uniquement si les deux images bitmap sont de la même taille. Par conséquent, si l’objet cible change de taille ou d’orientation et que cela entraîne une modification de la taille du cadre de sélection, il se peut que l’effet ne soit pas lu correctement.
Cet effet et ses sous-classes diffèrent des autres effets de Flex, dans la mesure où ils sont destinés à fonctionner de façon autonome. Par conséquent, leur résultat est imprévisible s’ils sont exécutés parallèlement à d’autres effets. Cette contrainte est due au fait que les deux images bitmap avant/après sont collectées avant le début de l’effet. Ainsi, si l’objet cible subit une quelconque modification après le calcul de ces images bitmap, par exemple si un autre effet modifie les propriétés de la cible, ces modifications ne sont pas prises en compte dans l’image bitmap précalculée et les résultats sont alors imprévisibles. Pour assurer le bon déroulement de ces effets bitmap, ils doivent être lus de façon exclusive sur leurs objets cible.
Le programme pixel shader peut disposer de fonctions et d’entrées arbitraires, mais il doit au minimum posséder trois entrées
Au moins deux autres entrées d’images bitmap doivent être définies. Celles-ci doivent être appelées
Deux paramètres facultatifs peuvent être définis :
Pour plus d’informations sur la création de programmes pixel shader pour Flash, voir la documentation de Pixel Bender Toolkit. Le code source du fichier CrossFade.pbk est disponible dans le répertoire frameworks\projects\flex4\src\spark\effects du code source de Flex.
[Embed(source="Wipe.pbj", mimeType="application/octet-stream")] private var WipeCodeClass:Class; var shaderEffect = new AnimateTransitionShader(); shaderEffect.shaderByteCode = WipeCodeClass; shaderEffect.shaderProperties = {direction : 1};
<s:Move3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Move3D Properties id="ID" xBy="no default" xFrom="no default" xTo="no default" yBy="no default" yFrom="no default" yTo="no default" zBy="no default" zFrom="no default" zTo="no default" />]]>
Comme tous les effets de type AnimateTransform, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement, car il dépend des fonctions de transformation propres à ces classes. Par ailleurs, les effets de transformation s’exécutant en parallèle sur la même cible s’exécutent comme une seule occurrence d’effet. Par conséquent, les effets de transformation partagent le centre de transformation défini par l’un des effets contributeurs.
<s:Wipe>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Wipe Properties id="ID" direction="right" />]]>
Un programme pixel shader chargé par l’effet exécute l’effet de l’image bitmap sous-jacente. Si vous souhaitez utiliser une autre comportement Wipe, vous pouvez spécifier un programme pixel shader. Le programme pixel shader doit se conformer aux contraintes spécifiée pour la propriété
Tous ces paramètres sont définis sur le shader lorsque la lecture de l’effet commence. Par conséquent, les paramètres doivent exister et réaliser une action appropriée pour que l’effet puisse fonctionner correctement.
<s:CallAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:CallAction Properties id="ID" functionName="no default" args="no default" />]]>
<s:AddAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AddAction Properties id="ID" index="-1" position="index" relativeTo="" />]]>
<s:AnimateFilter>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateFilter Properties id="ID" bitmapFilter="no default" />]]>
Les filtres que vous pouvez utiliser avec cet effet sont définis dans le package spark.filters. DropShadowFilter, GlowFilter, BlurFilter, et ShaderFilter font partie des filtres couramment utilisés.
Pour définir les propriétés du filtre à animer, transmettez un tableau d’objets SimpleMotionPath à la propriété
Les filtres que vous pouvez utiliser avec cet effet sont définis dans le package spark.filters. DropShadowFilter, GlowFilter, BlurFilter, et ShaderFilter font partie des filtres couramment utilisés.
<s:Rotate>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Rotate id="ID" angleBy="val" angleFrom="val" angleTo="val" />]]>
Si vous spécifiez au moins deux des valeurs d’angle (angleFrom, angleTo ou angleBy), Flex calcule la troisième valeur. Si vous spécifiez les trois valeurs d’angle, Flex ignore la valeur
Comme tous les effets de type AnimateTransform, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement, car il dépend des fonctions de transformation propres à ces classes.
Si la valeur de
Si la valeur de
<s:Scale3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Scale3D Properties id="ID" scaleXBy="no default" scaleXFrom="no default" scaleXTo="no default" scaleYBy="no default" scaleYFrom="no default" scaleYTo="no default" scaleZBy="no default" scaleZFrom="no default" scaleZTo="no default" />]]>
Comme tous les effets de type AnimateTransform, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement, car il dépend des fonctions de transformation propres à ces classes. Par ailleurs, les effets de transformation s’exécutant en parallèle sur la même cible s’exécutent comme une seule occurrence d’effet. Par conséquent, les effets de transformation partagent le centre de transformation défini par l’un des effets contributeurs.
<s:Move>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Move id="ID" xBy="val" xFrom="val" xTo="val" yBy="val" yFrom="val" yTo="val" />]]>
Comme tous les effets de transformation, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement.
A chaque instant de l’animation, où la fraction écoulée et accélérée de l’animation est
v = v1 * (1 - f) + v2 * f
L’effet bitmap est exécuté par un programme pixel shader chargé par l’effet. Vous pouvez spécifier un autre comportement de fondu enchaîné en spécifiant un programme pixel shader pour la propriété
<s:Fade>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<s:Fade id="ID" alphaFrom="val" alphaTo="val" />]]>
Si l’effet fait disparaître le composant cible, la valeur par défaut est la valeur actuelle de la propriété
Si l’effet fait disparaître le composant cible, la valeur par défaut est 0.0. Si l’effet fait s’afficher le composant cible, la valeur par défaut est la valeur actuelle de la propriété
<s:Animate>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Animate Properties id="ID" disableLayout="false" easer="{spark.effects.easing.Sine(.5)}" interpolator="NumberInterpolator" motionPaths="no default" repeatBehavior="loop" />]]>
Remarque : il est possible d’avoir une accélération au niveau de l’effet et au niveau de l’image-clé (où les images-clés contiennent les valeurs/heures utilisées dans les structures d’accélération). Ces comportements d’accélération se construisent les uns sur les autres. Le paramètre
<s:Resize>
tag
inherits all of the tag attributes of its superclass,
and adds the following tab attributes:
<s:Resize id="ID" widthFrom="val" heightFrom="val" widthTo="val" heightTo="val" widthBy="val" heightBy="val" />]]>
Si vous spécifiez seulement deux des trois valeurs
<s:Scale>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Scale id="ID" scaleXBy="val" scaleXFrom="val" scaleXTo="val" scaleYBy="val" scaleYFrom="val" scaleYTo="val" />]]>
Comme tous les effets de type AnimateTransform, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement, car il dépend des fonctions de transformation propres à ces classes.
<s:RemoveAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:RemoveAction Properties id="ID" />]]>
<s:SetAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:SetAction Properties id="ID" property="" value="" />]]>
<s:AnimateTransform>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransform Properties id="ID" applyChangesPostLayout="false" autoCenterTransform="false" transformX="0" transformY="0" transformZ="0" />]]>
Même si la combinaison des différents effets de transformation est réalisée en interne, certaines contraintes doivent être prises en compte :
Cet effet et ses sous-classes sont soumis à une autre contrainte : la cible doit être de type UIComponent ou GraphicElement (ou une sous-classe de ces classes), ou un objet qui définit et implémente de façon similaire les fonctions
Cet effet n’est pas destinée à être utilisés directement, mais expose plutôt les fonctionnalités communes utilisées par les sous-classes. Pour utiliser les effets de transformation, utilisez les effets de sous-classe (Move, Move3D, Scale, Scale3D, Rotate et Rotate3D).
Si la valeur de la propriété
Si la valeur de la propriété
Si la valeur de la propriété
<s:AnimateColor>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateColor Properties id="ID" colorFrom="no default" colorPropertyName="color" colorTo="no default" />]]>
<s:Rotate3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Rotate3D Properties id="ID" angleXFrom="no default" angleXTo="no default" angleYFrom="no default" angleYTo="no default" angleZFrom="no default" angleZTo="no default" />]]>
Comme tous les effets de type AnimateTransform, cet effet fonctionne uniquement sur les sous-classes des classes UIComponent et GraphicElement, car il dépend des fonctions de transformation propres à ces classes. Par ailleurs, les effets de transformation s’exécutant en parallèle sur la même cible s’exécutent comme une seule occurrence d’effet. Par conséquent, les effets de transformation partagent le centre de transformation défini par l’un des effets contributeurs.
Si la valeur de
Si la valeur de
Si la valeur de