2010-06-18 59 views
0

我想知道是否有一种方法可以像在ActionScript3中那样翻译图层的底层矩阵。XCode翻译矩阵ala ActionScript?

在AS3中,我可以得到一个图层的变换并将其转移到,比方说,使图层的中心成为定位点,而不是左上角。

我问的原因是因为我想沿对角轴旋转一层(包含一个正方形)。如果我可以将矩阵旋转45度,我认为这可能很容易,然后我可以围绕X轴旋转并完成。

但我无法弄清楚如何做到这一点。

任何帮助,非常感谢,一如既往。

干杯,

克里斯

回答

0

使用CGAffineTransform

编辑:

恐怕我不知道你所说的“旋转沿对角线轴的对象”的意思。你最可能需要做的是连接两个或更多的变换。

请参阅figure 5-8 in Quartz 2D programming Guide两个变换的连接会创建围绕左下角旋转的图像的外观。

+0

嘿那里, 是的,我明白这是使用的方法,但是我该如何使用它。当我做AffineTransformMakeRotation时,它会旋转图层,以便不用方形图案就可以得到钻石。 我正在寻找的是一种旋转底层坐标系的方法,以便X轴从-X,+ Y到+ X,-Y,但该层不旋转。 这可能吗?它会为我想要做的事情工作吗?或者,有没有更容易/更好的沿对角轴旋转物体的方法? 谢谢! Chris – Raconteur 2010-06-22 18:56:06

+0

看到我的编辑更多的想法。 – TechZen 2010-06-23 12:54:50

+0

谢谢,TZ。这有帮助。我可以通过以下代码获得我想要的结果: CATransform3DConcat(((FlippingLayerTestView *)[self view])。lyr.transform,CATransform3DRotate(CATransform3DIdentity,M_PI/2,-1,1,0)) ; – Raconteur 2010-06-24 17:27:12