Apache Flex 4.16.1 API Reference | All Packages | All Classes | Index | Frames No Frames |
Elastic

Package | spark.effects.easing
Class | public class Elastic
Inheritance | Elastic Object
Implements | IEaser

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

The Elastic class implements easing functionality where the target object movement is defined by an exponentially decaying sine wave. The effect target decelerates toward the end value, and continues past the end value. It then oscillates around the end value in smaller and smaller increments, before reaching the end value.

View the examples

Public Methods

| Method | Defined By
--- | --- | ---
|  | Elastic() Constructor. | Elastic
|  | ease(fraction:Number):Number Takes the fraction representing the elapsed duration of an animation (a value between 0.0 to 1.0) and returns a new elapsed value. | Elastic

Constructor Detail

Elastic | () | Constructor

`public function Elastic()`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Constructor.

Method Detail

ease | () | method

`public function ease(fraction:Number):Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Takes the fraction representing the elapsed duration of an animation (a value between 0.0 to 1.0) and returns a new elapsed value. This value is used to calculate animated property values. By changing the value of the elapsed fraction, you effectively change the animation of the property.

Parameters

| `fraction:Number` — The elapsed fraction of an animation, from 0.0 to 1.0.

Returns

| `Number` — The eased value for the elapsed time. Typically, this value should be constrained to lie between 0.0 and 1.0, although it is possible to return values outside of this range. Note that the results of returning such values are undefined, and depend on what kind of effects are using this eased value. For example, an object moving in a linear fashion can have positions calculated outside of its start and end point without a problem, but other value types (such as color) may not result in desired effects if they use time values that cause them to surpass their endpoint values.

Examples
BounceElasticEffectExample.mxml

    <?xml version="1.0"?>
    <!--

      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.

    -->
    <!-- Simple example to demonstrate the s:Bounce and s:Elastic 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>
            <s:Bounce id="bounceEasing"/>
            <s:Elastic id="elasticEasing"/>
            <s:Move id="moveRight"
                target="{myImage}"
                xBy="500"
                duration="2000"
                easer="{elasticEasing}"/>
            <s:Move id="moveLeft"
                target="{myImage}"
                xBy="-500"
                duration="2000"
                easer="{bounceEasing}"/>
        </fx:Declarations>

        <s:Panel id="examplePanel"
            title="Bounce and Elastic Effect Example"
            width="75%" height="75%">

            <!-- Directions -->
            <s:VGroup id="detailsBox" width="50%" top="5" left="5">
                <s:Label width="99%" color="blue"
                    text="Click the buttons to watch the effect."/>
            </s:VGroup>

            <mx:Image id="myImage" top="20"
                source="@Embed(source='assets/logo.jpg')"/>

            <s:Button label="Move Right"
                 bottom="10" left="5"
                click="moveRight.end();moveRight.play();"/>

            <s:Button label="Move Left"
                bottom="10" left="100"
                click="moveLeft.end();moveLeft.play();"/>
        </s:Panel>
    </s:Application>

Wed Nov 15 2017, 09:50 AM +01:00