Packagespark.effects
Classpublic class CrossFade
InheritanceCrossFade Inheritance AnimateTransitionShader Inheritance Animate Inheritance Effect Inheritance flash.events.EventDispatcher

Language Version : ActionScript 3.0
Product Version : Flex 4
Runtime Versions : Flash Player 10, AIR 1.5

The CrossFade effect performs a bitmap transition effect by running a crossfade between the first and second bitmaps. The crossfade blends the two bitmaps over the duration of the animation.

At any point in the animation, where the elapsed and eased fraction of the animation is f and the pixel values in the first and second bitmaps are v1 and v2, the resulting pixel value v for any pixel in the image is:

v = v1 * (1 - f) + v2 * f

The bitmap effect is run by a pixel-shader program that is loaded by the effect. You can specify a different crossfade behavior by specifying a pixel-shader program to the shaderByteCode property. That pixel-shader program must meet the requirements defined in the AnimateTransitionShader effect.

Default MXML PropertymotionPaths

View the examples

See also

spark.effects.AnimateTransitionShader
spark.effects.AnimateTransitionShader.shaderByteCode


Public Properties
 PropertyDefined By
 InheritedbitmapFrom : BitmapData
The bitmap data representing the start state of this effect.
AnimateTransitionShader
 InheritedbitmapTo : BitmapData
The bitmap data representing the end state of this effect.
AnimateTransitionShader
 InheritedclassName : String
[read-only] The name of the effect class, such as "Fade".
Effect
 InheritedcustomFilter : EffectTargetFilter
Specifies a custom filter object, of type EffectTargetFilter, used by the effect to determine the targets on which to play the effect.
Effect
 InheriteddisableLayout : Boolean
If true, the effect disables layout on its targets' parent containers, setting the containers autoLayout property to false, and also disables any layout constraints on the target objects.
Animate
 Inheritedduration : Number
Duration of the effect in milliseconds.
Effect
 Inheritedeaser : IEaser
The easing behavior for this effect.
Animate
 InheritedeffectTargetHost : IEffectTargetHost
A property that lets you access the target list-based control of a data effect.
Effect
 Inheritedfilter : String
Specifies an algorithm for filtering targets for an effect.
Effect
 InheritedhideFocusRing : Boolean
Determines whether the effect should hide the focus ring when starting the effect.
Effect
 InheritedinstanceClass : Class
An object of type Class that specifies the effect instance class class for this effect class.
Effect
 Inheritedinterpolator : IInterpolator
The interpolator used by this effect to calculate values between the start and end values of a property.
Animate
 InheritedisPlaying : Boolean
[read-only] A read-only flag which is true if any instances of the effect are currently playing, and false if none are.
Effect
 InheritedmotionPaths : Vector.<MotionPath>
A Vector of MotionPath objects, each of which holds the name of a property being animated and the values that the property takes during the animation.
Animate
 InheritedperElementOffset : Number
Additional delay, in milliseconds, for effect targets after the first target of the effect.
Effect
 InheritedplayheadTime : Number
Current time position of the effect.
Effect
 InheritedrelevantProperties : Array
An Array of property names to use when performing filtering.
Effect
 InheritedrelevantStyles : Array
An Array of style names to use when performing filtering.
Effect
 InheritedrepeatBehavior : String
The behavior of a repeating effect, which means an effect with repeatCount equal to either 0 or > 1.
Animate
 InheritedrepeatCount : int = 1
Number of times to repeat the effect.
Effect
 InheritedrepeatDelay : int = 0
Amount of time, in milliseconds, to wait before repeating the effect.
Effect
 InheritedshaderByteCode : Object
The bytecode for the pixel-shader program that the effect uses to animate between the two bitmaps.
AnimateTransitionShader
 InheritedshaderProperties : Object
A map of parameter name/value pairs passed to the pixel-shader program before playing.
AnimateTransitionShader
 InheritedstartDelay : int = 0
Amount of time, in milliseconds, to wait before starting the effect.
Effect
 Inheritedtarget : Object
The object to which this effect is applied.
Effect
 Inheritedtargets : Array
An Array of objects that are targets for the effect.
Effect
 InheritedtriggerEvent : Event
The Event object passed to this Effect by the EffectManager when an effect is triggered, or null if the effect is not being played by the EffectManager.
Effect
Protected Properties
 PropertyDefined By
 InheritedapplyTransitionEndProperties : Boolean
This flag controls whether the effect, when run in a transition, automatically applies the property values according to the end state, as opposed to leaving values as set by the effect itself.
Effect
 InheritedendValuesCaptured : Boolean = false
A flag containing true if the end values of an effect have already been determined, or false if they should be acquired from the current properties of the effect targets when the effect runs.
Effect
Public Methods
 MethodDefined By
  
CrossFade(target:Object = null)
Constructor.
CrossFade
 Inherited
Captures the current values of the relevant properties on the effect's targets and saves them as end values.
Effect
 Inherited
captureMoreStartValues(targets:Array):void
Captures the current values of the relevant properties of an additional set of targets Flex uses this function when a data change effect is run.
Effect
 Inherited
Captures the current values of the relevant properties on the effect's targets.
Effect
 Inherited
createInstance(target:Object = null):IEffectInstance
Creates a single effect instance and initializes it.
Effect
 Inherited
createInstances(targets:Array = null):Array
Takes an Array of target objects and invokes the createInstance() method on each target.
Effect
 Inherited
Removes event listeners from an instance and removes it from the list of instances.
Effect
 Inherited
end(effectInstance:IEffectInstance = null):void
Interrupts an effect that is currently playing, and jumps immediately to the end of the effect.
Effect
 Inherited
Returns an Array of Strings, where each String is the name of a property changed by this effect.
Effect
 Inherited
pause():void
Pauses the effect until you call the resume() method.
Effect
 Inherited
play(targets:Array = null, playReversedFromEnd:Boolean = false):Array
Begins playing the effect.
Effect
 Inherited
resume():void
Resumes the effect after it has been paused by a call to the pause() method.
Effect
 Inherited
reverse():void
Plays the effect in reverse, if the effect is currently playing, starting from the current position of the effect.
Effect
 Inherited
stop():void
Stops the effect, leaving the effect targets in their current state.
Effect
Protected Methods
 MethodDefined By
 Inherited
applyValueToTarget(target:Object, property:String, value:*, props:Object):void
Used internally by the Effect infrastructure.
Effect
 Inherited
Called when an effect instance has finished playing.
Effect
 Inherited
This method is called when the effect instance starts playing.
Effect
 Inherited
Called when an effect instance has stopped by a call to the stop() method.
Effect
 Inherited
filterInstance(propChanges:Array, target:Object):Boolean
Determines the logic for filtering out an effect instance.
Effect
 Inherited
getValueFromTarget(target:Object, property:String):*
Called by the captureStartValues() method to get the value of a property from the target.
Effect
 Inherited
Copies properties of the effect to the effect instance.
Effect
Events
 Event Summary Defined By
 InheritedDispatched when one of the effect's instances finishes playing, either when the instance finishes playing or when the effect is interrupted by a call to the end() method.Effect
 InheritedDispatched when the effect begins a new repetition, for any effect that is repeated more than once.Animate
 InheritedDispatched when the effect starts playing.Effect
 InheritedDispatched when the effect has been stopped, which only occurs when the effect is interrupted by a call to the stop() method.Effect
 InheritedDispatched every time the effect updates the target.Animate
Constructor Detail
CrossFade()Constructor
public function CrossFade(target:Object = null)

Language Version : ActionScript 3.0
Product Version : Flex 4
Runtime Versions : Flash Player 10, AIR 1.5

Constructor.

Parameters
target:Object (default = null) — The Object to animate with this effect.
Examples
CrossFadeExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<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">

    <s:states>
        <s:State name="default"/>
        <s:State name="flipped"/>
    </s:states>

    <s:transitions>
        <s:Transition id="t1" autoReverse="true">
            <s:CrossFade
                target="{holder}"
                duration="1000" />
        </s:Transition>
    </s:transitions>

    <s:Panel title="CrossFade Example"
        width="75%" height="75%" horizontalCenter="0" verticalCenter="0">

        <s:HGroup width="100%" height="100%" top="5" left="5" right="5">
            <s:Group id="holder">
                <s:BitmapImage
                    source="@Embed('assets/back2.png')"
                    visible="true" visible.flipped="false"/>
                <s:BitmapImage
                    source="@Embed('assets/c2.png')"
                    visible="false" visible.flipped="true"/>
            </s:Group>

            <!-- Directions -->
            <s:VGroup id="detailsBox"
                width="50%"
                left="0">
                <s:Label
                    width="99%"
                    color="blue"
                    text="CrossFade fades from bitmapFrom to the bitmapTo image. This example cross-fades between two bitmapGraphics in a group via a state transition. Click the 'Play CrossFade' button to see the effect."/>
            </s:VGroup>
        </s:HGroup>

        <s:Rect left="0" right="0" bottom="0" height="30">
            <s:fill>
                <s:LinearGradient rotation="90">
                    <s:GradientEntry color="0xE2E2E2" />
                    <s:GradientEntry color="0xD9D9D9" />
                </s:LinearGradient>
            </s:fill>
        </s:Rect>
        <s:Button id="playButton"
            left="5" bottom="5"
            label="Play CrossFade"
            click="currentState = (currentState == 'flipped') ? 'default' : 'flipped';"/>
    </s:Panel>

</s:Application>