Рисование пунктирной линии в Sprite Kit с использованием SKShapeNode и CGPath

Я хочу нарисовать пунктирную линию в моей игре Sprite Kit, я могу использовать узел SKShapeNode, чтобы нарисовать нормальную линию, как показано ниже:

 UIBezierPath *_path=[UIBezierPath bezierPath];
 //1
 CGPoint point1 = CGPointMake(100,100);
 CGPoint point2 = CGPointMake(150,150);
 [_path moveToPoint:point1];
 [_path addLineToPoint:point2];
 //2
 SKShapeNode *line = [SKShapeNode node];
 line.path = _path.CGPath;

Я попытался установить пунктирный шаблон в UIBezierPath следующим образом:

// adding this code at location 1 or 2 above but no effect
CGFloat dashes[] = {6, 2};
[_path setLineDash:dashes count:2 phase:0];

но пунктирная схема не применяется.

Я также попытался создать пунктирную копию CGPath непосредственно из свойства UIBezierpath.CGPath как:

 CGFloat dashes[] = {6, 2};
 CGPathRef aCGPath= CGPathCreateCopyByDashingPath(_path.CGPath,NULL,0,dashes,2);
line.path = aCGPath;

но тоже самое.

Я очень признателен, если кто-то может объяснить, в чем проблема и как я могу нарисовать пунктирную линию между двумя точками, применив пунктирный cgpath к skshapenode.

Редактировать: я знаю, что для этого простого примера я мог бы разделить расстояние между этими двумя точками на небольшие фиксированные расстояния и перемещать и рисовать пунктирную линию по bezeirpath, но рассмотрим путь свободной руки с точками, взятыми от прикосновений, перерисовать его очень сложно и неэффективно путь с точками фиксированной длины, затем нарисуйте штрихи. Интересно, есть ли способ применить пунктирный шаблон к пути и сделать скшапенод для его использования, это мой вопрос.

Ответы на вопрос(2)

Ваш ответ на вопрос