ElasticEase クラス

定義

静止するまで前後に振動するスプリングに似たアニメーションを作成するイージング関数を表します。

public ref class ElasticEase sealed : EasingFunctionBase
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ElasticEase final : EasingFunctionBase
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ElasticEase : EasingFunctionBase
Public NotInheritable Class ElasticEase
Inherits EasingFunctionBase
<ElasticEase .../>
継承
Object Platform::Object IInspectable DependencyObject EasingFunctionBase ElasticEase
属性

この XAML の例では、ElasticEase イージング関数を DoubleAnimation に適用して、スプリングが静止するまで前後に振動するアニメーションを作成します。

<StackPanel x:Name="LayoutRoot" >
    <StackPanel.Resources>
        <Storyboard x:Name="myStoryboard">
            <DoubleAnimation From="1" To="6" Duration="00:00:3" 
                Storyboard.TargetName="rectScaleTransform" 
                Storyboard.TargetProperty="ScaleY">
                <DoubleAnimation.EasingFunction>
                    
                    <!-- Elastic easing function assigned to From/To animation -->
                    <ElasticEase x:Name="myElasticEase" Oscillations="3" 
                     Springiness="1" EasingMode="EaseOut"/>
                </DoubleAnimation.EasingFunction>
            </DoubleAnimation>
        </Storyboard>
    </StackPanel.Resources>

    <Rectangle PointerPressed="Pointer_Clicked" 
     Fill="Blue" Width="200" Height="30">
        <Rectangle.RenderTransform>
            <ScaleTransform x:Name="rectScaleTransform" />
        </Rectangle.RenderTransform>
    </Rectangle>

</StackPanel>
// When the user clicks the rectangle, the animation
// begins. 
private void Pointer_Clicked(object sender, PointerRoutedEventArgs e)
{
    myStoryboard.Begin();
}

注釈

ElasticEase は、通常の From/To 範囲外の値を生成できる 2 つのイージング関数の 1 つです。 (もう 1 つは BackEase です)。イージング関数が開始すると、From 値の周囲で正と 負の値 が振動し、最終的に正の振幅 ( To 値) に達します。 Springiness プロパティは、この振動の正弦文字を変更します。 Springiness が 0 の場合、振動は基本的に正弦波であり、ばねの動きの典型的な図に似ています。 Springiness 値が大きいほど、スプリングのモーションを減衰させるようなものです。

振動プロパティは、関数が振動し、実際に開始開始値の下にある値に交差する回数を宣言します。

アニメーションがアニメーション化されたプロパティ値のシナリオに必要な処理を視覚的に行うまで、 SpringinessEasingsEasingMode のプロパティを試すだけで、最適な結果が得られる場合があります。

BounceEase は、アニメーションの物理エミュレーションに適した同様のイージング関数です。 ElasticEase との違いは、 BounceEaseFrom/To の範囲外にならない点です。 2 つのイージング関数を概念化するもう 1 つの方法は、ElasticEase を使用して文字列のプラッキングをアニメーション化する方法であるのに対し、 BounceEase は、ラインまたは平面に対するボールのバウンスを表示するために使用する方法です。

イージング関数は、From/To/ByアニメーションのEasingFunction プロパティ、またはキー フレーム アニメーションのイージング バリアントに使用されるキー フレーム型の EasingFunction プロパティに適用できます。 詳細については、「 キー フレーム アニメーションとイージング関数アニメーション」を参照してください。

コンストラクター

名前 説明
ElasticEase()

ElasticEase クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
Dispatcher

Windows アプリ SDK アプリで常に null を返します。 代わりに DispatcherQueue を使用してください。

(継承元 DependencyObject)
DispatcherQueue

このオブジェクトが関連付けられている DispatcherQueue を取得します。 DispatcherQueueは、コードが非 UI スレッドによって開始された場合でも、UI スレッド上のDependencyObjectにアクセスできる機能を表します。

(継承元 DependencyObject)
EasingMode

アニメーションの補間方法を指定する値を取得または設定します。

(継承元 EasingFunctionBase)
Oscillations

ターゲットがアニメーションの移動先を前後にスライドする回数を取得または設定します。

OscillationsProperty

振動依存関係プロパティ 識別します。

Springiness

ばねの剛性を取得または設定します。 ばね性の値が小さいと、ばねが硬くなり、弾性が速いほど各振動の強度が低下します。

SpringinessProperty

Springiness 依存関係プロパティを識別します。

メソッド

名前 説明
ClearValue(DependencyProperty)

依存関係プロパティのローカル値をクリアします。

(継承元 DependencyObject)
Ease(Double)

正規化された時間を変換して、アニメーションのペースを制御します。

(継承元 EasingFunctionBase)
GetAnimationBaseValue(DependencyProperty)

依存関係プロパティに対して確立された基本値を返します。これは、アニメーションがアクティブでない場合に適用されます。

(継承元 DependencyObject)
GetValue(DependencyProperty)

DependencyObject から依存関係プロパティの現在の有効な値を返します。

(継承元 DependencyObject)
ReadLocalValue(DependencyProperty)

ローカル値が設定されている場合は、依存関係プロパティのローカル値を返します。

(継承元 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

この DependencyObject インスタンスの特定の DependencyProperty への変更をリッスンするための通知関数を登録します。

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

DependencyObject の依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

RegisterPropertyChangedCallback を呼び出して以前に登録した変更通知を取り消します。

(継承元 DependencyObject)

適用対象

こちらもご覧ください