Разрежьте SKShapeNode на две части - PullRequest
       117

Разрежьте SKShapeNode на две части

0 голосов
/ 22 сентября 2019

Есть ли простой способ нарезать SKShapeNode на 2 отдельных SKShapeNode?

В этом примере я создал SKShapeNode, используя закрытый путь Безье, а также одну строку.

let squareShape = SKShapeNode()
    squareShape.path = UIBezierPath(roundedRect: CGRect(x: 0, y: 0, width: 256, height: 256), cornerRadius: 10).cgPath
    squareShape.position = CGPoint(x: frame.midX-128, y: frame.midY+200-128)
    squareShape.fillColor = UIColor.green
    squareShape.strokeColor = UIColor.blue
    squareShape.lineWidth = 2
    addChild(squareShape)

    let lineShape1 = SKShapeNode()
    let line1 = UIBezierPath()
    line1.move(to: CGPoint(x: -200, y: 300))
    line1.addLine(to: CGPoint(x: 200, y: 100))
    lineShape1.path = line1.cgPath
    lineShape1.strokeColor = UIColor.white
    lineShape1.lineWidth = 2
    addChild(lineShape1)

Как я могу преобразовать существующий SKShapeNode в 2 отдельных SKShapeNode, разделенных линией?

Мне нужно иметь возможность делать это с различными позициями линий и типами фигур (или даже с несколькими фигурами и одной линией).

Спасибо

enter image description here

...