2010-09-13 77 views
1

我想旋转图像石英2d围绕一个角落..我想制作模拟时钟。在石英2d旋转图像

+0

对你有好处......你有没有试过做过什么? – Vladimir 2010-09-13 07:54:29

+0

是的,我试图旋转使用cgaffine,但它围绕其中心旋转不围绕一个角落... – 2010-09-13 08:22:00

+0

好问题,但作出问号(?) – Saawan 2010-10-15 10:59:29

回答

1

您应该从Quartz 2D Programming Guide开始。特别是,请查看转换部分,这包括旋转。

实质上,您需要做的是将旋转变换矩阵应用到当前变换矩阵(CTM)。这将定义您绘制的坐标与用户设备上显示的坐标的映射。

石英确实使这一切都相当简单的代码;上面的链接有示例代码。

+0

谢谢...但我可以旋转图像有一端稳定和另一端在时钟周围旋转...你可以给我一个例子....? – 2010-09-13 08:21:03

+0

简单的旋转变换围绕原点(左下)旋转。你可以将原点翻译为中心(大概),然后执行旋转。现在画出你的时钟。需要绘制时钟,以便旋转的点位于窗口的左下角。 – 2010-09-13 11:21:17

1

例如,你可以这样做:

CGAffineTransform transform = CGAffineTransformMakeRotation(ANGLE_IN_RADIANS); 
view.transform = transform;

如果你想有一个平滑的动画,尝试使用的UIView动画。

但是如果你需要一个其他的旋转,你应该检查文档:-)

祝您好运!