我想 - 在D3的幫助下 - 以不同的速度圍繞其中心旋轉物體。一切工作正常,只要轉速不是太高。但最終對象開始翻滾,即使旋轉中心(明顯)是固定的。D3:翻滾骰子(不需要)
在http://jsfiddle.net/mcqnpgn6/`
// initialize rotation angles
var dAngle = 10
var angles = []
var angle = 0;
for (i = 0; i < T; i++) {
angles[i] = angle
angle += dAngle > 0 ? dAngle : i
}
// create dice ....
// rotate dice
for (i = 0; i < T; i++) {
dice.transition()
.delay(i * dt)
.duration(dt)
.ease("linear")
.attr("transform", "rotate(" + angles[i] + "," + cx + "," + cy + ")")
}
找到翻滾骰子我做了什麼或理解錯誤? 你怎麼會解決這個任務?
我會用'的requestAnimationFrame'而不是在'for'循環編寫自己的動畫,我不認爲這需要'轉移()'。每一幀,你都希望骰子的旋轉角度與速度變量成反比。 – anbnyc