我有一个圆,该圆周围有4个圆弧。 目前,我正在绘制这样的弧形:
fileprivate func addArc(from startAngle: CGFloat, to endAngle: CGFloat, of color: SKColor, with text: String) {
let arc = UIBezierPath(arcCenter: CGPoint(x: 0, y: 0), radius: 100, startAngle: startAngle, endAngle: endAngle, clockwise: false)
arc.flatness = 100
let node = SKShapeNode()
node.lineWidth = 36
node.strokeColor = color
node.path = arc.cgPath
addChild(node)
}
,当我稍后尝试在弧中添加新的LabelNode时,
let labelNode = SKLabelNode(text: text)
labelNode.horizontalAlignmentMode = .center
labelNode.verticalAlignmentMode = .center
node.addChild(labelNode)
将NodeLabel添加到圆的中间,但不添加到圆弧的中间。 我发现错误出在这一行:
let arc = UIBezierPath(arcCenter: CGPoint(x: 0, y: 0), radius: 100, startAngle: startAngle, endAngle: endAngle, clockwise: false)
我要设置arcCenter
的位置。
所以问题是,如何移动这些弧的中心,以便将labelNodes添加到弧中而不添加到圆中?