如何在转到角度之前将 SKSpriteNode 旋转 360°

Posted

技术标签:

【中文标题】如何在转到角度之前将 SKSpriteNode 旋转 360°【英文标题】:How to rotate an SKSpriteNode by 360° before go to angle 【发布时间】:2015-12-09 13:13:59 【问题描述】:

我今天遇到一个问题,我想在到达指定角度之前对 spritenode 进行 360° 旋转,我找到了一种方法,但我不知道这是否是最好的。

我尝试了很多方法,但这段代码没有按预期工作

let angle = CGFloat(self.angle * number) // angle in degrees
let flip  = CGFloat(360+angle).degreesToRadians // 360°+angle in radians
SKAction.rotateToAngle(-flip, duration: 0.4, shortestUnitArc:false)

【问题讨论】:

【参考方案1】:

在尝试不同的方法后,此代码按预期工作,它会在旋转到角度之前完成一个完整的循环。这是最好的方法吗?

let angle = CGFloat(self.angle * number)
let flip  = CGFloat(360+angle).degreesToRadians
let needleTurn = SKAction.sequence([
    SKAction.rotateToAngle(-flip/2, duration: 0.2, shortestUnitArc:true),
    SKAction.rotateToAngle(-flip, duration: 0.2, shortestUnitArc:false)
])

【讨论】:

以上是关于如何在转到角度之前将 SKSpriteNode 旋转 360°的主要内容,如果未能解决你的问题,请参考以下文章

将数据从 HDFS 导出到 MySQL,但在转到 MySQL 之前应更新数据

JavaFX 在转到下一个方法之前等待动画方法完成

在转到下一个视图控制器(Swift)之前进行异步调用

确保在转到下一页之前发送了Google Analytics事件

在转到另一个Activity之前,需要editText字段

Nextjs如何在转到下一页时不卸载上一页(保持状态)