ios - 每当圆形图像与 Xcode 中的 CGRect 相交时发出

标签 ios xcode uiimageview cgrect intersect

在我的应用程序中,每当两个圆形图像彼此相交时,游戏就会结束,但我看到的问题是两个图像在实际相互接触之前实际上已经相交。我尝试了多个示例来尝试解决我的问题,但似乎都不起作用。这是我现在已经实现的代码...

creature.layer.backgroundColor=[[UIColor clearColor] CGColor];
creature.layer.cornerRadius=25;
creature.layer.masksToBounds = YES;

ball1.layer.backgroundColor=[[UIColor clearColor] CGColor];
ball1.layer.cornerRadius=20;
ball1.layer.masksToBounds = YES;

有什么办法可以使图像的中心发生碰撞,而不是图像的框架发生碰撞?

最佳答案

首先,UIKit 不包含用于碰撞检测(或游戏开发)的正确工具。你为什么不试试SpriteKit呢?现在,尝试回答您的问题,我能想到的使用 UIKit 的最佳方法是使用 CGRect 来近似圆角(每个角 3 个应该可以解决问题)。您还可以使用一个圆角路径上的 3 个或更多任意点进行此近似,并检查它们中的任何一个是否在另一个对象路径内(这意味着您将使用 CGPaths 来描述圆角矩形而不是图层的角半径。

关于ios - 每当圆形图像与 Xcode 中的 CGRect 相交时发出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23706588/

相关文章:

iphone - 如何将 NSDateFormatter 更改为 "DD/MM/YYYY"?

ios - 使用自动布局将表格 View 单元格高度调整为图像的高度

iphone - ImageView 以编程方式发送到后台

ios - 无法使用自动布局将简单的自调整大小 Collection View 单元格调整为标签大小

ios - 初始化期间使用 NSKeyedUnarchiver 时出现问题

objective-c - 从 iOS 应用程序向 Facebook 发布状态更新

ios - 以编程方式自动布局和 UIImageView

ios - 使播放 Http 实时流媒体视频的 AVPlayer 静音

swift - Hacking With Swift Project 2...如何随机化这些图像?

ios - 触发drawRect重绘 View 的按钮