2011-08-11 126 views
1

我有这两条线在我的代码正在开发HTML5:旋转之前翻译或翻译之前旋转吗?它有什么不同?

context.rotate(radian); 
radian += 0.1; 
context.translate(128,128); 

上述结果给出了不同的结果,下面几行:

context.translate(128,128); 
context.rotate(radian); 
radian += 0.1; 

的是这2段的代码之间的差异?我得到了不同的结果,但为什么和如何计算不同,我无法理解这一点。

+1

尝试在一些方格纸上绘制出来,看看会发生什么。这应该有助于告诉你你想使用哪一个。 – AndyBursh

+0

@AndyBursh:翻译,然后旋转很容易理解。但是,旋转和翻译更容易理解。谢谢。你对方格纸的想法确实有帮助。 – TCM

回答

2

不同之处在于转换的起源。如果之前执行了转换转换,则可能需要调整以下旋转转换的转换原点,反之亦然。这取决于你试图达到的结果。