Добавить SKSpriteNode
:
let container = SKSpriteNode.init(color: UIColor.redColor(), size: CGSizeMake(800, 400))
container.position=CGPointMake(300, 300)
self.addChild(container)
Создать массив CGPoint
«с. Я использовал только треугольник вы можете использовать все, что вы хотите:
let firstPathArray:[CGPoint]=[CGPoint(x: 0, y: 0),CGPoint(x: 100, y: 0),CGPoint(x: 50, y: 100)]
Добавить путь к контейнеру:
addbezierPathToContainer(container,pathArray: firstPathArray)
Добавить путь:
func addbezierPathToContainer(container:SKSpriteNode,pathArray:[CGPoint]) -> Void {
let newpath = UIBezierPath()
var startpoint:Bool=false;
for path in pathArray {
if(!startpoint)
{
newpath.moveToPoint(CGPoint(x: path.x, y: path.y))
startpoint=true;
}
else
{
newpath.addLineToPoint(CGPoint(x: path.x, y: path.y))
newpath.addLineToPoint(CGPoint(x: path.x, y: path.y))
}
}
//close path
newpath.closePath()
UIColor.blackColor().setStroke()
newpath.stroke()
let pathNode = SKShapeNode(path: newpath.CGPath)
container.addChild(pathNode);
}
Большое спасибо. – Mamazur