2011-02-01 57 views
0

后我跟以来第10版为测试目的,我创建了一个立方体的FlashPlayer可用的rotationX/Y/Z性能打过来,把画布对象在它三面(顶,正面,底部),并创建一个补间,以获得90度所需的数值。使用rotationX = xx旋转立方体(一个画布)当三个侧画布对象很小并且填充了一个非复杂的元素层次结构时,效果很好。当使用更大和更复杂的内容时,它会变慢。接下来的想法是在开始转弯之前移除画布元素内容并将其替换为内容的快照,而在转动之后,原始内容再次放回到两侧。这会导致性能提高。使用补间旋转的最后一步是在称为tweenEnd处理函数的函数中完成的。在这个功能中,也执行复制画布内容的过程。不幸的是,这导致在最后一个旋转步骤中立方体的短暂挂起,原因是旋转和复制同时发生。 ,所以我可以具有通过使用定时器或setTimeout(func, 500)称为cube.rotationX = endValue后等待一段时间,但是这是丑陋的。 所以我的问题是:在已经叫cube.rotationX = endValue的一段时间需要计算数据的旋转和做旋转本身。有没有办法找出时间点当旋转已经结束,使再复制可以开始了吗?如何找出那一刻已经的rotationX完成

预先感谢您 泰勒

回答

0

有没有任何违约事件,完成旋转时调度。但我想用callLater()函数来复制内容。尝试一下。

0

这正是点,不存在指示所述旋转结束的事件。使用callLater()而是采用setTimeout()的解决方案似乎是一个进步然而,由于等待一定的时间总是invloving一些“希望工程机器X”。非常感谢你的提示!

问候

泰勒

相关问题