将frame.contains()与旋转的精灵一起使用

时间:2018-11-26 09:37:54

标签: swift sprite-kit rotation frame gamekit

旋转精灵不会旋转其框架,而是会放大框架以适应精灵的新尺寸,here中有记载。精灵周围的额外区域会创建空白空间。

在确定旋转后的精灵是否包含另一个精灵或其某个点时,contains() function考虑​​到旋转后的精灵周围的空白accumulatedFrame空间。

如何更改框架以匹配精灵,以免发生这种情况?

1 个答案:

答案 0 :(得分:0)

一个选择是将SKNodes放置在正方形旋转之前的每个角上,然后再使用convert函数获取它们的点。从那里,您可以在它们之间绘制UIBezierPath,并使用contains()检查准确的交点。

唯一的问题是,贝塞尔曲线在分配给节点时似乎随节点一起移动,但是实际路径是固定的,不会移动。

相关问题