<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" />]]>
Genauso wie bei AnimateTransform gibt es einige Eigenschaften bei diesem Effekt, die mit allen anderen Transformationseffekten gemeinsam verwendet werden, mit denen der Effekt während der Laufzeit kombiniert wird. Insbesondere sind die projektionsbezogenen Eigenschaften
Die 3D-Effekte funktionieren so, dass ein dreidimensionales Bild einer zweidimensionalen Darstellung zur Anzeige auf dem Computerbildschirm zugeordnet wird. Der Projektionspunkt definiert die Mitte des Ansichtsfelds und steuert, wie das Ziel aus drei Dimensionen auf den Bildschirm projiziert wird.
Diese Eigenschaft wird nur verwendet, wenn für
Ein Wert nahe
Ein Wert nahe
Diese Eigenschaft wird nur verwendet, wenn für
Diese Eigenschaft wird nur verwendet, wenn für
Diese Eigenschaft wird nur verwendet, wenn für
Diese Eigenschaft wird nur verwendet, wenn für
Diese Eigenschaft wird nur verwendet, wenn für
<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" />]]>
Die Animation wird mit einem Pixel-Shader-Programm ausgeführt, das von der
Wenn keine der Bitmaps angegeben wird, wird dieser Wert dynamisch anhand des entsprechenden Status des Ziels in einem Übergang bestimmt oder, wenn der Effekt nicht in einem Übergang ausgeführt wird, direkt anhand des Ziels. Wenn der Effekt in einem Übergang ausgeführt wird und das Zielobjekt während der Statusänderung entweder verschwindet oder entsteht, wird eine vollkommen transparente Bitmap verwendet, um das Objekt darzustellen, wenn es nicht existiert.
Dieser Effekt kann nur für Ziele ausgeführt werden, bei denen es sich entweder um UIComponents oder GraphicElements handelt, da für das Erfassen der Bitmap des Objekts Informationen über das Objekt erforderlich sind, die nur in diesen Klassen existieren.
Da der Effekt bitmapbasiert ist und das zugrunde liegende Pixel-Shader-Programm erwartet, dass beide Bitmaps dieselbe Größe aufweisen, kann der Effekt auch nur korrekt ausgeführt werden, wenn diese Voraussetzung erfüllt ist. Dies bedeutet, dass der Effekt möglicherweise nicht korrekt abgespielt wird, wenn sich die Größe oder Ausrichtung des Zielobjekts und folglich die Größe des Begrenzungsrahmens ändert.
Dieser Effekt und seine Unterklassen unterscheiden sich von anderen Effekten in Flex dadurch, dass sie dafür konzipiert sind, eigenständig zu funktionieren, und möglicherweise nicht zu dem beabsichtigten Ergebnis führen, wenn sie parallel zu anderen Effekten ausgeführt werden. Diese Beschränkung wird durch die Tatsache hervorgerufen, dass die Vorher- und Nachher-Bitmap vor dem Beginn der Ausführung des Effekts erfasst werden. Wenn also etwas mit dem Zielobjekt passiert, nachdem diese Bitmaps berechnet wurden (wenn z. B. die Eigenschaften des Ziels durch einen anderen Effekt geändert werden), sind diese Änderungen in den im Voraus berechneten Bitmaps nicht berücksichtigt, sodass die Ergebnisse nicht den Erwartungen entsprechen. Um die korrekte Wiedergabe solcher bitmapbasierter Effekte sicherzustellen, sollten diese einzeln für die Zielobjekte abgespielt werden.
Das Pixel-Shader-Programm kann über beliebig viele Funktionen und Eingaben verfügen, muss jedoch mindestens drei
Es müssen mindestens zwei weitere Eingabe-Bitmaps mit den Bezeichnungen
Sie können die beiden optionalen Parameter
Weitere Informationen zum Schreiben von Pixel-Shader-Programmen für Flash können Sie der Dokumentation Pixel Bender Toolkit entnehmen. Sie können den Quellcode für die Datei „CrossFade.pbk“ auch im Ordner frameworks\projects\flex4\src\spark\effects des Flex-Quellcodes anzeigen.
[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" />]]>
Ähnlich wie alle auf AnimateTransform basierenden Effekte funktioniert dieser Effekt nur auf Unterklassen von UIComponent und GraphicElement, da diese Effekte von bestimmten Transformationsfunktionen in diesen Klassen abhängen. Außerdem werden Transformationseffekte, die parallel auf dem gleichen Ziel ausgeführt werden, als eine einzige Effektinstanz ausgeführt. Daher verwenden die Transformationseffekte die gleiche Transformationsmitte, die von einem der Effekte festgelegt wurde.
<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" />]]>
Ein vom Effekt geladenes Pixel-Shader-Programm führt den zugrunde liegenden Bitmap-Effekt aus. Wenn Sie ein anderes Wipe-Verhalten verwenden möchten, können Sie ein benutzerdefiniertes Pixel-Shader-Programm angeben. Das Pixel-Shader-Programm muss die für die
Alle diese Parameter werden vom Shader-Programm eingestellt, wenn mit dem Abspielen des Effekts begonnen wird. Deshalb müssen diese Parameter vorhanden sein und eine entsprechend Aktion ausführen, damit der Effekt korrekt funktioniert.
<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" />]]>
Die Filter, die Sie mit diesem Effekt verwenden können, sind im Spark-Filter-Paket definiert . Zu den häufig verwendeten Filtern gehören die Filter „DropShadowFilter“, „GlowFilter“, „BlurFilter“ und „ShaderFilter“.
Um die Eigenschaften des zu animierenden Filters zu definieren, übergeben Sie ein Array von SimpleMotionPath-Objekten an die
Die Filter, die Sie mit diesem Effekt verwenden können, sind im Spark-Filter-Paket definiert . Zu den häufig verwendeten Filtern gehören die Filter „DropShadowFilter“, „GlowFilter“, „BlurFilter“ und „ShaderFilter“.
<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" />]]>
Wenn Sie zwei der Winkelwerte (angleFrom, angleTo oder angleBy) angeben, berechnet Flex den dritten Winkelwert. Wenn Sie alle drei Winkelwerte angeben, ignoriert Flex den
Wie alle AnimateTransform-basierten Effekte funktioniert dieser Effekt nur für Unterklassen von UIComponent und GraphicElement, da diese Effekte von bestimmten Transformationsfunktionen in diesen Klassen abhängen.
Wenn der Wert
Wenn der Wert
<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" />]]>
Ähnlich wie alle auf AnimateTransform basierenden Effekte funktioniert dieser Effekt nur auf Unterklassen von UIComponent und GraphicElement, da diese Effekte von bestimmten Transformationsfunktionen in diesen Klassen abhängen. Außerdem werden Transformationseffekte, die parallel auf dem gleichen Ziel ausgeführt werden, als eine einzige Effektinstanz ausgeführt. Daher verwenden die Transformationseffekte die gleiche Transformationsmitte, die von einem der Effekte festgelegt wurde.
<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" />]]>
Dieser Effekt kann wie alle anderen transformationsbasierten Effekte nur für Unterklassen von UIComponent und GraphicElement ausgeführt werden.
An einem beliebigen Punkt während der Animation, an dem der verstrichene und beschleunigte Teil der Animation gleich
v = v1 * (1 - f) + v2 * f
Der Bitmap-Effekt wird durch ein Pixel-Shader-Programm ausgeführt, das durch den Effekt geladen wird. Sie können ein anderes Überblendungsverhalten angeben, indem Sie ein Pixel-Shader-Programm für die
<s:Fade>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<s:Fade id="ID" alphaFrom="val" alphaTo="val" />]]>
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, entspricht der Standardwert dem aktuellen Wert der
Wenn die Zielkomponente durch den Effekt ausgeblendet wird, ist der Standardwert 0,0. Wenn die Zielkomponente durch den Effekt eingeblendet wird, entspricht der Standardwert dem aktuellen Wert der
<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" />]]>
Beachten Sie, dass eine Beschleunigung sowohl auf der Effektstufe als auch der Schlüsselbildstufe (in der Schlüsselbilder die Werte/Zeiten in den MotionPath-Strukturen enthalten) möglich ist. Das Beschleunigungsverhalten baut jeweils aufeinander auf. Der
<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" />]]>
Wenn Sie nur zwei der drei Werte der Eigenschaften
<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" />]]>
Wie alle AnimateTransform-basierten Effekte funktioniert dieser Effekt nur für Unterklassen von UIComponent und GraphicElement, da diese Effekte von bestimmten Transformationsfunktionen in diesen Klassen abhängen.
<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" />]]>
Diese Kombination mehrerer Transformationseffekte tritt zwar intern auf; sie erzwingt aber bestimmte Beschränkungen, die berücksichtigt werden müssen:
Eine zusätzliche Beschränkung dieses Effekts und den zugehörigen Unterklassen ist, dass das Ziel vom Typ UIComponent oder GraphicElement (oder einer Unterklasse dieser Klassen) oder ein beliebiges anderes Objekt mit ähnlich definierten und implementierten
Dieser Effekt ist nicht für eine direkte Verwendung vorgesehen, sondern bietet allgemeine Funktionen, die von den zugehörigen Unterklassen verwendet werden. Verwenden Sie für Transformationseffekte die Unterklasseneffekte (Move, Move3D, Scale, Scale3D, Rotate und Rotate3D).
Wenn
Wenn
Wenn
<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" />]]>
Ähnlich wie alle auf AnimateTransform basierenden Effekte funktioniert dieser Effekt nur auf Unterklassen von UIComponent und GraphicElement, da diese Effekte von bestimmten Transformationsfunktionen in diesen Klassen abhängen. Außerdem werden Transformationseffekte, die parallel auf dem gleichen Ziel ausgeführt werden, als eine einzige Effektinstanz ausgeführt. Daher verwenden die Transformationseffekte die gleiche Transformationsmitte, die von einem der Effekte festgelegt wurde.
Wenn der Wert
Wenn der Wert
Wenn der Wert