gpt4 book ai didi

ios - UIBezierPath 上的点或位置

转载 作者:行者123 更新时间:2023-11-28 06:51:47 29 4
gpt4 key购买 nike

我的游戏中有两个圆圈。圆圈有不同的大小。每个 Circle 都有一个 UIBezierPath。现在我想要我的对象,它在一个圆上移动,移动到另一个圆上完全相同的位置。

enter image description here

如何确定我的对象在圆圈或 UIBezierPath 上的位置,并将对象放置到另一个路径上的新点?

路径:

let Path0 = UIBezierPath(arcCenter: CGPoint(x: self.frame.width / 2, y: self.frame.height / 2 + yCircleOffset), radius: actualCircle.size.height / 2, startAngle: radian, endAngle: radian + CGFloat(M_PI * 4), clockwise: true)

行动:

Object1.runAction(SKAction.repeatActionForever(SKAction.followPath(Path0.CGPath, asOffset: false, orientToPath: true, speed: 100)))

最佳答案

你不能说这样的话吗:

func outerX(innerPoint:CGPoint)->CGFloat
{
return (innerPoint.x-self.frame.size.width*0.5)*radius2/radius1 +self.frame.size.width*0.5
}

func outerY(innerPoint:CGPoint)->CGFloat
{
return (innerPoint.y-self.frame.size.height*0.5)*radius2/radius1+self.frame.size.height*0.5
}

func moveObjectToOuterCircle()
{
let innerPoint = object1.position
let outerPoint = CGPointMake(outerX(innerPoint), outerY(innerPoint))

object1.removeAllActions()

object1.runAction(SKAction.moveTo(outerPoint,duration:0.25))
}

?

关于ios - UIBezierPath 上的点或位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34684893/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com