2013-12-13 75 views
0

我正在使用一個簡單的A *路徑查找算法來創建兩點之間的路徑(下面的綠色和紅色圓圈),每個正方形是一個SKSpriteNode(具有CGPoint [x,y]位置) 。我想沿着穿過每個點的平滑路徑製作另一個SKSpriteNode的動畫。SKAction followPath,創建路徑

我的想法是,我可以使用SKAction-followPath:duration:要做到這一點,但我無法工作了如何創建/指定CGPath。任何幫助將非常感激。

enter image description here

回答

2

您可以創建一個簡單的CGPath這樣

CGMutablePathRef path = CGPathCreateMutable(); 
CGPathMoveToPoint(path, NULL, 0, 0); 
CGPathAddLineToPoint(path, NULL, 100, 0); 
CGPathAddLineToPoint(path, NULL, 100, 100); 

根據您想達到你可以將不同的元素,你的路徑類似圓弧加什麼,曲線,rects ... 你可以找到更多關於它here

+0

謝謝,我可以問一下,路徑是平滑的還是僅僅是[x,y]座標之間的直線? – fuzzygoat

+1

當然,只是使用CGContextAddCurveToPoint而不是CGPathAddLineToPoint。有一個很好的[Quartz 2D編程指南中的路徑部分](https://developer.apple.com/library/mac/documentation/graphicsimaging/Conceptual/drawingwithquartz2d/dq_paths/dq_paths.html#//apple_ref/doc/uid/TP30001066-CH211)。 –

+0

非常感謝,現在生病了,馬上給你答覆。非常感謝。 – fuzzygoat