2015-06-06 120 views
0

我正在做一个动画,它有大约5000帧,帧频是24.我想计算经过的时间,以秒为单位。Flash时间轴经过时间计算

考虑我导航到第1000帧。现在是什么时间?

var fps:Number = 24; 
var totolF:Number = 5000; 
var sec:Number = 5000/24; 
var cF:Number = 1000; 
var elapsedTime:Number = ??? 
+0

var fps:Number = 24; var totolF:Number = 5000; var sec:Number = 5000/24; var cF:Number = 1000; var elapsedTime:Number = cF * sec; ??? – user93331

+1

为什么不这样做:var time:Number = 1000/24?你有每秒24 **帧**,你有1000 **帧**,所以一个简单的划分会给你在几秒钟内流逝的时间。 – DodgerThud

+0

请使用适当的格式将您的代码添加到问题中。 –

回答

0

第一种方式:

var fps:Number = 24; 
var totolF:Number = 5000; 
var sec:Number = 5000/24; 
var cF:Number = 1000; 

var elapsedTime:Number = Math.floor(1/24 *currentFrame); 

方式二(更准确的,但如果你暂停你的电影,所用时间不会暂停):

var fps:Number = 24; 
var totolF:Number = 5000; 
var sec:Number = 5000/24; 
var cF:Number = 1000; 

var elapsedTime:Number =Math.floor(getTimer()/1000); 

我想更好地使用第一个。

希望本贴帮助。☻