成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SilverLight動畫緩沖具體操作指南

開發 開發工具
SilverLight動畫緩沖的方式總共可以分為三種,分別為在動畫結束的時候開始緩沖;動畫開始的時候開始緩沖;以及在兩種情況下都會發生。

對于開發人員來說,他們每天面對的都是一串一串無聊的代碼行。而且程序出來后實現的效果也是比較單一的。但是應用上SilverLight后,其效果就會發生很大的變化。在這里我們就會為大家詳細分析一下有關SilverLight動畫緩沖的相關概念。#t#

SilverLight動畫緩沖設計的目的是可以讓你創建和使用多種特殊的動畫效果,包括以下會介紹的反彈或叫做“跳躍”效果(bouncing or "spring" effects)。Silverlight 3.0在命名空間System.Windows.Media.Animation namespace下內置了許多緩沖功能。

使用動畫緩沖功能可以讓你很容易地讓對象產生很真實的動畫效果而不用你自己去研究物理學。

舉個例子,如果你想讓你的動畫產生一個很真實的“彈跳”,你或者可以自己研究一下物理學然后為它寫個程序,或者使用內置的彈跳緩沖(bounce easing)功能,你可以通過使用animation標簽的的新的子標簽EasingFunction來實現它。

考慮一下這么一個情況。在Silverlight中,如果你想讓一個橢圓產生從屏幕頂部到底部的動畫,你需要使用一個< Storyboard>對象,里面包含一個< DoubleAnimation>指向橢圓的"Top"屬性。要是想給這個動畫增加緩沖,你只需要簡單地往里添加SilverLight動畫緩沖功能的定義,如下所示:

 

  1. < Canvas x:Name="LayoutRoot" 
    Background="White"> 
  2. < Canvas.Resources> 
  3. < Storyboard x:Name="bounce"> 
  4. < DoubleAnimation From="0" To="300"
     Duration="0:0:10" 
  5. Storyboard.TargetName="myCircle" 
  6. Storyboard.TargetProperty="(Canvas.Top)"> 
  7. < DoubleAnimation.EasingFunction> 
  8. < BounceEase Bounces="10" 
    EasingMode="EaseOut" Bounciness="2">   
  9. < /BounceEase> 
  10. < /DoubleAnimation.EasingFunction> 
  11. < /DoubleAnimation> 
  12. < /Storyboard> 
  13. < /Canvas.Resources> 
  14. < Ellipse x:Name="myCircle" Width="40"
     Height="40" Fill="Red" Canvas.Top="0"
     Canvas.Left="50">< /Ellipse> 
  15. < /Canvas> 

加粗的EasingFunction的定義包含了你想要使用的緩沖的類型,不同的類型有不同的參數來定義緩沖。舉個例子,要模擬一個物體落下時的反彈,你只要指定開始和結束時的位置(Top從'From'0到'To'300),然后使用緩沖來定義彈跳的行為。在這個例子中是被設置成彈跳10次,而且是在動畫結束的時候開始彈跳(緩沖模式'EasingMode'被設置成'EaseOut')。

注意使用SilverLight動畫緩沖可以有3種方式:EaseIn,在這種模式下會在動畫結束的時候開始緩沖;EaseOut,動畫開始的時候開始緩沖;EaseInOut,兩種情況下都會發生。

所以如果你想象一個彈跳效果就像我們之前看到的在一個值上使用動畫讓它從0變到100,并使用彈跳緩沖,會發生以下的情況:

EaseIn:值從0開始向100移動,在到達100之前返回到0,再向100移動,再返回,每次都更接近100,直到到達100.

EaseOut:值從0開始向100移動,到達100后往0的方向移動,到達0之前返回100,再反彈,每次都離0更遠,直到停止在100上。

EaseInOut:是前2個的奇怪組合,在值超過一半之前按EaseIn的方式彈跳,超過一半后按EaseOut的方式彈跳。

你可以看到在我們之前的例子里我們使用了EaseOut的模式,因為它模擬球落下時的彈跳有更自然地效果。

所有內置的SilverLight動畫緩沖都可以在System.Windows.Media.Animation命名空間下找到。以下的描述是基于EaseIn的模式。但是你可以從它推知EaseOut和EaseInOut中的效果。雖然下面有對這些功能的簡單的介紹,但是每個緩沖模式之間的區別可能是非常細微的。最好能夠試驗一下來體會。

責任編輯:曹凱 來源: 博客園
相關推薦

2009-12-31 15:36:13

SilverLight

2009-12-30 15:47:40

Silverlight

2009-12-30 16:48:52

Silverlight

2011-03-17 09:06:58

iptables映射端口

2010-02-02 16:23:46

C++實現WPF動畫

2010-07-26 13:30:23

2010-08-02 17:20:12

nfs啟動Linux

2010-08-02 12:34:09

ADSL代理設置

2010-05-27 14:29:53

Linux查看進程

2009-12-09 09:28:12

配置靜態路由

2010-02-24 13:06:27

WCF使用Nhiber

2010-03-02 09:39:11

保護WCF服務

2010-03-02 16:15:59

WCF控制事務

2010-07-15 19:46:40

關閉Telnet 23

2009-12-31 17:17:45

Silverlight

2010-03-01 14:56:48

WCF服務引用

2010-04-01 17:25:46

Oracle死鎖進程

2010-04-02 08:42:32

Oracle 游標

2010-02-03 13:26:53

C++計時

2010-03-17 13:33:04

Python Libr
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美中文字幕 | 亚洲国产成人精品久久 | 久久久免费精品 | 精品国产免费人成在线观看 | 国产精品久久久久久久白浊 | 欧美久久精品 | 国产精品久久视频 | 精品国产伦一区二区三区观看方式 | 永久www成人看片 | 国产精品美女久久久久久久网站 | 国产成人综合一区二区三区 | 亚洲 欧美 另类 日韩 | 亚洲人成在线播放 | a级性视频| 久久午夜电影 | 欧美一区免费 | 欧美精品久久一区 | 99精品国产一区二区三区 | 91精品一区二区 | 亚洲激情在线观看 | 国产在线观看一区二区三区 | 成人高潮片免费视频欧美 | 欧美高清性xxxxhdvideosex | 亚洲国产黄色av | 日韩精品欧美精品 | 国产精品高潮呻吟久久av野狼 | 91精品国产综合久久久久 | 中文字幕在线观看一区 | 天天操,夜夜爽 | 国产精品区一区二区三区 | 伊人网99 | 亚洲成av人影片在线观看 | 国产精品毛片av一区 | 欧美在线一区二区三区四区 | 国产不卡一区在线观看 | 久久国内| 久久久.com| 日本久久网 | 在线色网 | 97伊人| 免费中文字幕 |