Tween.js的使用示例


可參考:http://www.htmleaf.com/jQuery/Layout-Interface/201501271284.html

官方文檔:https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md      http://learningthreejs.com/blog/2011/08/17/tweenjs-for-smooth-animation/

 

1.Tween原意是補間動畫,也就是給出一個物體的原始位置和目標位置,Tween會在原始位置和目標位置補充動畫,實現移動的動畫效果。

2.從原始位置到目標位置中間有過渡,過渡的效果有很多,Linear.None,Elastic.InOut等等

 

3.TWEEN有幾個callback事件,onStart,onStop,onComplete等,用法是

[javascript]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. new TWEEN.Tween(position).to(target, 2000).easing(TWEEN.Easing.Linear.None).onComplete(function(){  
  2.    console.log("done")  
  3. }).start()  

 

 

 

使用步驟:

①創建Tween對象,指明初始位置和目標位置

 

[javascript]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. <pre name="code" class="javascript">var position = { x : 0, y: 300 };  
  2. var target = { x : 400, y: 50 };  
  3. new TWEEN.Tween(position).to(target, 2000).easing(TWEEN.Easing.Linear.None).start()  

 

 

 
        

其中2000表示從開始位置到目標位置需要2秒

 

 

②指明過渡形式

 

[html]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. tween.easing(TWEEN.Easing.Linear.None)  

這里選擇了線性過渡

 

 

③啟動Tween

 

[javascript]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. tween.start();  

 

 

④定期更新tween,一般放入在render循環里

 

[javascript]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. TWEEN.update();  



以上代碼可精簡為

 

 

[javascript]  view plain  copy
 
 在CODE上查看代碼片派生到我的代碼片
  1. var position = { x : 0, y: 300 };  
  2. var target = { x : 400, y: 50 };  
  3. new TWEEN.Tween(position).to(target, 2000).easing(TWEEN.Easing.Linear.None).start()  

因為TWEEN的每一個函數都返回tween對象,所以可以鏈式調用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM