WPF与缓动(四) 弧形缓动

                                                   WPF与缓动(四)  弧形缓动
                                                                        周银辉

弧形缓动就是其缓动曲线为一段圆弧, 如何我们假设圆弧上的点的斜率为速度的话,那么可以想像其速度的变化多么具有戏剧性, 其加速或减速来得很突然, 与5次缓动差不多.
参考以下代码:
 //圆形缓动
        protected override double GetCurrentValueCore(double defaultOriginValue, double defaultDestinationValue, AnimationClock animationClock)
        
{
            
double from = (this.From==null?defaultDestinationValue:(double)this.From);
            
double to = (this.To==null?defaultOriginValue:(double)this.To);
            
double delta = to - from;
            
double value = animationClock.CurrentProgress.Value;

            
double t = value * this.Duration.TimeSpan.Ticks;
            
double d = this.Duration.TimeSpan.Ticks;

            
//加速
            
//return delta * (1-Math.Sqrt(1-(t/=d)*t)) + from;

            
//减速
            
//return delta * Math.Sqrt(1 - (t = t / d - 1) * t) + from;

            
//先加速,后减速
            if ((t /= (d / 2)) < 1)
            
{
                
return delta / 2 * (1 - Math.Sqrt(1 - t * t)) + from;
            }

            
return delta / 2 * (Math.Sqrt(1 - (t -= 2* t) + 1+ from;
            
        }

下载Demo

 

posted on 2007-05-28 13:16 周银辉 阅读(2055) 评论(7)  编辑 收藏 网摘

评论

#1楼 2007-05-28 21:37 Young.J      

楼主,你好,我这两天在学习wpf,有点不知道从哪入手,我创建了一个window wpf工程,添加了一个按钮,在design窗口可以通过拖拉调整空间,比如大小等,怎么也不能像winform那样双击按钮添加点击事件,请问是我的vs有问题还是那地方没有设置好?能不能推荐一些帮助入门的文章   回复  引用  查看    

#2楼 2007-05-29 00:42 Young.J      

好有,我在webcast上看的讲座,简单的,没有后台代码的xaml程序可以直接双击,在浏览器运行,而我的xaml的程序直接打开时都报错,在vs里编译后,运行bin/Debug下的xbap才能运行,请问是我的浏览器缺少什么插件吗?   回复  引用  查看    

#3楼[楼主] 2007-05-29 08:56 周银辉      

@Young.J
VS目前没有双击添加事件这个功能,不过在Blend中会找到和以前VS一样的事件列表,双击列表中的某项会自动地添加相应的事件代码
  回复  引用  查看    

#4楼 2007-05-29 09:15 Young18.J

@周银辉
那请问我的浏览器没法直接运行简单的xaml文件是怎么回事呢?是我的winfx3的版本不对还是缺少了什么?
  回复  引用    




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 762365




历史上的今天:
2006-05-28 TongJI Online Judge预赛(2): LOVE LETTER

相关文章:

相关链接:

导航

<2007年5月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

统计

搜索

 

常用链接

留言簿

我参与的团队

随笔分类(215)

随笔档案(195)

友情链接

积分与排名

最新随笔

阅读排行榜