所以我想做的就是将SKSPriteNode
旋转90度。只是。它应该是简单的,但我的第一种方法,假设它是度,将对象完全转换为错误的方法。所以我去谷歌>堆栈溢出。有很多答案可以解决这个问题,可以尝试使用M_PI
或一些变化。不。 'Double'不能转换为'CGFloat'。谷歌再次。 “尝试使用skhy with blah blah”nope。
旋转精灵有多难?或者我疯了
答案 0 :(得分:3)
这对我来说似乎很好。了解弧度和度数之间的转换非常重要。 http://en.wikipedia.org/wiki/Radian#Conversion_between_radians_and_degrees
sprite.zRotation = CGFloat(M_PI_2)
答案 1 :(得分:2)
我假设你根据你的"' Double'使用Swift。是不可转换的......"评价。
以下将精灵逆时针旋转90度:
sprite.runAction(SKAction.rotateByAngle(CGFloat(M_PI_2), duration: 1.0))
以下将精灵顺时针旋转90度:
sprite.runAction(SKAction.rotateByAngle(CGFloat(-M_PI_2), duration: 1.0))
答案 2 :(得分:2)
另一个选择是为Int创建一个Extension
extension Int
{
var deg2Rad : CGFloat
{
return CGFloat(self) * CGFloat(M_PI) / 180.0
}
}
然后像这样使用它:
sprite.runAction(SKAction.rotateByAngle(180.deg2Rad,duration:1.0))
让我觉得它更具人性化