標籤:javascript three.js web3d webgl 源碼
商域無疆 (http://blog.csdn.net/omni360/)
本文遵循“署名-非商業用途-保持一致”創作公用協議
轉載請保留此句:商域無疆 - 本部落格專註於 敏捷開發及移動和物聯裝置研究:資料視覺效果、GOLANG、Html5、WEBGL、THREE.JS,否則,出自本部落格的文章拒絕轉載或再轉載,謝謝合作。
俺也是剛開始學,好多地兒肯定不對還請見諒.
以下代碼是THREE.JS 源碼檔案中Core/Clock.js檔案的注釋.
更多更新在 : https://github.com/omni360/three.js.sourcecode
/** * @author alteredq / http://alteredqualia.com/ *//*///Clock對象的建構函式.用來記錄時間.Clock對象的功能函數採用///定義構造的函數原型對象來實現.//////用法: var clock = new Clock(true)///建立時鐘用來記錄時間,傳遞參數true,設定自動開始記錄.///NOTE: 參數(autostart)為true,自動開始記錄,省略該參數也自動開始記錄時間,設定為false,穿件時間,但不開始記錄.以毫秒為單位,從 1 January 1970 00:00:00 UTC開始.*////<summary>Clock</summary>///<param name ="autoStart" type="Boolean">true 或者 false</param>THREE.Clock = function ( autoStart ) {this.autoStart = ( autoStart !== undefined ) ? autoStart : true;//自動開始記錄時間this.startTime = 0;//開始記錄的時間截,以毫秒為單位,從 1 January 1970 00:00:00 UTC開始.this.oldTime = 0;//上一次記錄時間截.以毫秒為單位,從 1 January 1970 00:00:00 UTC開始.this.elapsedTime = 0;//記錄目前時間距離上一次記錄時間截.以毫秒為單位,從 1 January 1970 00:00:00 UTC開始.this.running = false;//用來跟蹤時鐘是否在記錄時間.};/********************************************下面是Clock對象提供的功能函數.****************************************/THREE.Clock.prototype = {constructor: THREE.Clock,//構造器,返回對建立此對象的Clock函數的引用/*///start方法用來開始記錄時間,獲得開始的時間截.*////<summary>start</summary>start: function () {this.startTime = self.performance !== undefined && self.performance.now !== undefined ? self.performance.now() : Date.now();this.oldTime = this.startTime;this.running = true;//開始記錄時間},/*///stop方法用來停止記錄時間,獲得結束的時間截.*////<summary>stop</summary>stop: function () {this.getElapsedTime();//獲得結束的時間截this.running = false;//停止記錄時間},/*///getElapsedTime方法用來返回從oldTimed到stop之間的時間長度,以秒為單位.*////<summary>getElapsedTime</summary>///<returns type="Date">以秒為單位,時間長度</returns>getElapsedTime: function () {this.getDelta();return this.elapsedTime;//返回時間長度},/*///getDelta方法是getElapsedTime方法的實現,具體的演算法.*////<summary>getElapsedTime</summary>///<returns type="Date">以秒為單位,時間長度</returns>getDelta: function () {var diff = 0;if ( this.autoStart && ! this.running ) {this.start();}if ( this.running ) {var newTime = self.performance !== undefined && self.performance.now !== undefined ? self.performance.now() : Date.now();diff = 0.001 * ( newTime - this.oldTime );this.oldTime = newTime;this.elapsedTime += diff;}return diff;//返回時間長度}};
商域無疆 (http://blog.csdn.net/omni360/)
本文遵循“署名-非商業用途-保持一致”創作公用協議
轉載請保留此句:商域無疆 - 本部落格專註於 敏捷開發及移動和物聯裝置研究:資料視覺效果、GOLANG、Html5、WEBGL、THREE.JS,否則,出自本部落格的文章拒絕轉載或再轉載,謝謝合作。
以下代碼是THREE.JS 源碼檔案中Core/Clock.js檔案的注釋.
更多更新在 : https://github.com/omni360/three.js.sourcecode
three.js 源碼注釋(二十)Core/Clock.js