【发布时间】:2016-11-18 17:22:53
【问题描述】:
我正在尝试在两点之间添加SKNode,如下图所示。
我有什么:
-
我用这段代码计算这两点之间的距离(工作正常):
func distanceCount(_ point: CGPoint) -> CGFloat { return abs(CGFloat(hypotf(Float(point.x - x), Float(point.y - y)))) }
-
-
然后我算中点(也可以)
func middlePointCount(_ point: CGPoint) -> CGPoint { return CGPoint(x: CGFloat((point.x + x) / 2), y: CGFloat((point.y + y) / 2)) }
-
最后这个函数添加了我的对象(SKNode):
func addBlock(_ size:CGSize, rotation:CGFloat, point: CGPoint) -> SKNode{
let block = SKSpriteNode(color: UIColor.lightGray , size: size)
block.physicsBody = SKPhysicsBody(rectangleOf: block.frame.size)
block.position = point //This is my middle point
block.physicsBody!.affectedByGravity = false
block.physicsBody!.isDynamic = false
block.zRotation = rotation
return block
}
总结:我的addBlock 函数添加了正确宽度且居中于正确位置的对象,但角度错误。
注意:我尝试创建应该计算角度的函数,但它们都错了:/ .
我的问题:我怎样才能得到正确的角度,或者还有其他方法可以达到我的目标吗?
如果您需要更多详细信息,请告诉我。
谢谢你:)
【问题讨论】:
标签: ios swift sprite-kit sknode