时分秒针旋转角度换算

     先来看秒针:1分钟有60秒,即秒针需要走过的格数是60格,闹钟一圈是360°,因此经过1秒钟,秒针走过的角度就是360°/60秒=6°,以正上方为夹角起始边算,秒针旋转角度公式为:second.rotation=currentTime.seconds*6°

     再来看分针:1小时有60分,即分针需要走过的格数也是60,因此经过1分钟,分针走过的角度也是360°/60分=6°。但分针走动是受秒针影响的,比如:01:30:00,当秒数为00的时候,分针是准确指向30分钟那个位置,即垂直向下方向,此时分针角度为:30*6°=180°;但如果再过30秒钟,即时间变为:01:30:30,此时分针就不指向垂直向下方向了,因为已经走过30秒,相当于走过了半分钟,分针又旋转了这半分钟的角度。现在来计算这30秒分针要走过的角度,1分钟有60秒,因此,这1分钟内,每1秒钟,分针旋转的角度就是:6°/60秒=0.1°,此时秒数为30,因此分针在这30秒内旋转的角度为:30*0.1°=3°。所以,时间为01:30:30的时候,分针的实际角度应为:180°+3°=183°(30*6°+30*0.1°=183°)。。综上所述,分针旋转角度公式为:minute.rotation=currentTime.minutes*6°+currentTime.seconds*0.1°

     最后看时针:时针和分针原理是一样的。1天有12小时,即时针需要走过的格数是12格,1小时经过的角度是360°/12小时=30°(到此步为止分钟数是0);1小时有60分,因此1分钟时针经过的角度为:30°/60分=0.5°(到此步为止,秒钟数是0);1小时有60*60=3600秒,因此1秒钟时针经过的角度为:30°/3600秒≈0.0083。所以,时针旋转角度公式为:hour.rotation≈currentTime.hours*30°+currentTime.minutes*0.5°+currentTime.seconds*0.0083

 闹钟

posted @ 2010-04-11 10:36  LT世纪  阅读(3848)  评论(1编辑  收藏  举报