WPF中的动画——缓动函数

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF中的动画——缓动函数相关的知识,希望对你有一定的参考价值。

原文:WPF中的动画——(四)缓动函数

缓动函数可以通过一系列公式模拟一些物理效果,如实地弹跳或其行为如同在弹簧上一样。它们一般应用在From/To/By动画上,可以使得其动画更加平滑。

    var widthAnimation = new DoubleAnimation()
    {
        From = 0,
        To = 320,
        Duration = TimeSpan.FromSeconds(1),
        EasingFunction = new BackEase()
        {
            Amplitude = 0.3,
            EasingMode = EasingMode.EaseOut,
        },
    };

    button.BeginAnimation(WidthProperty, widthAnimation);

从上面的例子可以看出,可以通过设置EasingFunction属性来使能缓动函数,通过 EasingMode 控制缓动函数的行为方式,它是一个枚举,有如下三个选项:

  • EaseIn :动画起始部分使能缓动函数
  • EaseOut :动画结束部分使能缓动函数
  • EaseInOut :动画起始和结束部分都使能缓动函数

 

内置的缓动函数:

系统内部内置了一系列缓动函数,可以参考下图选择所需要的函数。

BackEase

技术分享图片

BounceEase

技术分享图片

CircleEase

技术分享图片

CubicEase

技术分享图片

ElasticEase

技术分享图片

ExponentialEase

技术分享图片

PowerEase

技术分享图片

QuadraticEase

技术分享图片

QuarticEase

技术分享图片

QuinticEase

技术分享图片

SineEase

技术分享图片

 

参考资料:

http://msdn.microsoft.com/zh-cn/library/ee308751(v=vs.110).aspx













以上是关于WPF中的动画——缓动函数的主要内容,如果未能解决你的问题,请参考以下文章

动画基础,3种动画方式

# WPF动画速率效果

2021-09-25 WPF上位机 44-缓动动画

WPF中ListBox滚动时的缓动效果

WPF学习第五十一章 动画缓动

WPF C#实现动画(速度启停缓动线性渐变)