Я создал круг с UIBezierPath, который я добавляю в SKShapeNode. Круг отображается нормально. Но когда я хочу обновить путь, ничего не происходит. Я продолжаю видеть тот же начальный путь, который я создал. Должен ли я вызывать какую-то функцию обновления для правильного обновления пути? Изменения цвета и изменения обводки работают нормально, но путь остается неизменным.
override init(texture: SKTexture?, color: UIColor, size: CGSize) {
shape = SKShapeNode.init()
endAngle = CGFloat(endAngle) * CGFloat(M_PI) / 180.0
startAngle = CGFloat(startAngle) * CGFloat(M_PI) / 180.0
let circlePath : UIBezierPath = UIBezierPath.init(arcCenter: CGPoint(x:0,y:0), radius: 30, startAngle: startAngle, endAngle: endAngle , clockwise: true)
super.init(texture: texture, color: color, size: size)
shape!.path = circlePath.cgPath
shape!.fillColor = UIColor.red
addChild(shape!)
}
func changePath () {
self.endAngle -= 0.1
self.circle.path = nil
let circlePath : UIBezierPath = UIBezierPath.init(arcCenter: CGPoint(x:0,y:0), radius: 35, startAngle: startAngle, endAngle: self.endAngle , clockwise: true)
self.circle.path = circlePath.cgPath
}
circle
темSKShapeNode
, о котором вы говорите? И это то же самое, что иshape
SKShpaeNode
, которые вы создаете в инициализации? - person nathangitter   schedule 26.12.2016