如果我在Cocoa的应用程序中转换为NSView
:
self.view.layer.transform = CATransform3DMakeRotation(30 * M_PI / 180, 0, 0, 1);
我看到方形没有围绕Z轴旋转,而是旋转,好像该向量指向下方和外方。我需要做到这一点
self.view.layer.transform = CATransform3DMakeRotation(30 * M_PI / 180, 1, 1, 1);
使其围绕Z轴旋转,如this question上的图片所示。
但是,如果我设置NSTimer
然后更新transform
方法中的update
,那么使用
-(void) update:(id) info {
self.view.layer.transform =
CATransform3DMakeRotation(self.degree * M_PI / 180, 0, 0, 1);
self.degree += 10;
}
(这次,使用(0, 0, 1)
)将起作用:它围绕Z轴旋转。我想知道为什么(1, 1, 1)
内需要applicationDidFinishLaunching
,但(0, 0, 1)
方法可以使用update
?