检测到 SKShapedNode 已关闭

Detect that SKShapedNode is closed

在我以后的游戏中(在 SpriteKit 中),我需要绘制类似圆形的形状。我使用 CGMutablePathRefSKShapeNode 来绘制自己。

touchesEnded 我需要检查用户是否确实关闭了圆圈,或者开始和结束触摸之间是否存在间隙。 (严格来说,它不仅可以是正确的圆,我还需要检测任何闭合的形状,例如环...)

我该如何检查?

  1. 将触摸位置(点)存储在数组中:[yourArray addObject:[NSValue valueWithCGPoint:yourPoint]];
  2. 围绕数组中的第一个点(第一个触摸位置)制作一个矩形(大小?您的选择!它越小,越精确)。
  3. 控制矩形是否还包含数组中的最后一个点(最后触摸位置)。
  4. 如果是,请关闭路径。