【发布时间】:2012-01-12 04:40:34
【问题描述】:
问题来了
我有 5 个球漂浮在屏幕周围,它们会在顶部和底部弹跳。效果很好。
我现在要做的是解决它们中的任何一个是否相互碰撞。
我知道
if (CGRectIntersectsRect(image1.frame, image2.frame))
{
}
但这仅检查两个图像,我需要检查所有图像和每个图像..
我到处检查但找不到答案,只有其他人在搜索相同的东西,有什么想法吗?
提前致谢
灵巧的
编辑:
我使用它来查找 CGRect 并将其存储在一个数组中
ball1 = NSStringFromCGRect(image1.frame);
ball2 = NSStringFromCGRect(image2.frame);
ball3 = NSStringFromCGRect(image3.frame);
ball4 = NSStringFromCGRect(image4.frame);
ball5 = NSStringFromCGRect(image5.frame);
bingoarray = [NSMutableArray arrayWithObjects:ball1,ball2,ball3,ball4,ball5,nil];
然后将其传递给碰撞检测方法
-(void)collision {
for (int i = 0; i<[bingoarray count]-1 ; i++) {
CGRect ballA = CGRectFromString([bingoarray objectAtIndex:i]);
if (CGRectIntersectsRect(ballA, image1.frame)) {
NSLog(@"test");
}
}
我想这应该检查一个球与所有其他球。
所以球 1 与其他球进行检查,但不检查球 2 对他们。快到了吗?
}
【问题讨论】:
标签: ios collision-detection collision