快速检测两个不透明空间的节点之间的联系?

时间:2014-10-28 20:38:16

标签: ios objective-c sprite-kit

我想看看圆是否触及下图的非透明部分,而不仅仅是边界框(矩形):

enter image description here

有一种简单的方法吗?

1 个答案:

答案 0 :(得分:1)

你可以在你的视图上画一个UIBezierPath并用图案图像填充它,即你的草。

获得贝塞尔曲线路径后,请使用- (BOOL)containsPoint:(CGPoint)point方法确定您的观点是进入还是离开。

在一个项目中,我需要绘制多个形状,一些是基本的,另一些是复杂的。为了帮助我,我制作了一个显示图像的mac程序,通过点击某些点我可以在其中找到任何复杂的形状。 关闭形状后,程序会将绝对坐标转换为基于视图大小的坐标,并将它们导出为包含CGPoint数组的Plist文件。

在iOS应用程序中,我只需导入数组并使用points数组创建我的UIBezierPath。 如果你需要的不仅仅是线条,那么你可能想要在plist中添加除CGPoint之外的其他东西,但我认为你明白这一点。

相关问题