25

我不知道如何使用CATransform3DMakeRotation(). 有人可以告诉我如何使用它吗?

我认为第一个参数是角度,对吧?但是其他三个是什么?

4

3 回答 3

39

第一个是以弧度为单位的角度,其他 3 个参数是轴 (x, y, z)。因此,例如,如果您想绕 z 轴旋转 180 度,只需调用如下函数:

myView.layer.transform = CATransform3DMakeRotation(M_PI, 0.0, 0.0, 1.0);

并将结果应用于要旋转的视图的变换属性。

于 2011-01-02T00:43:36.867 回答
7

使用弧度时,您可能会发现这些很有用:

CGFloat DegreesToRadians(CGFloat degrees)
{
  return degrees * M_PI / 180;
};

CGFloat RadiansToDegrees(CGFloat radians)
{
  return radians * 180 / M_PI;
};
于 2014-07-03T14:50:14.953 回答
3

它们代表您要绕其旋转的轴。使用 0,0,1 在屏幕平面内旋转。

于 2011-01-02T00:42:17.540 回答