android 学习:多矩形碰撞检测
2014-04-05 02:03
423 查看
1. 检测两个矩形是否重叠
2. 效果
好久没写算法了,一个矩形检测都想半天,看来ACM有时候还是要练练。
public class RectCollision { /** * @return true 相交 */ public static boolean isCollision(Rect[] rectArray, Rect[] rect2Array) { for (Rect r1 : rectArray) { for (Rect r2 : rect2Array) { if (isCollision(r1, r2)) return true; } } return false; } /** * r1在r2的上面,下面,左面,右面 * r1和r2相交 * @param r1 * @param r2 * @return true 相交 */ public static boolean isCollision(Rect r1, Rect r2) { int x1 = r1.left; int y1 = r1.top; int w1 = r1.right - r1.left; int h1 = r1.bottom - r1.top; int x2 = r2.left; int y2 = r2.top; int w2 = r2.right - r2.left; int h2 = r2.bottom - r2.top; if (y1+h1 < y2 /*上*/ || x1+w1 < x2 /*左*/ || y2+h2 < y1 /*下*/ || x2+w2 < x1 /*右*/) { return false; } return true; } }
2. 效果
好久没写算法了,一个矩形检测都想半天,看来ACM有时候还是要练练。
相关文章推荐
- Android游戏开发之碰撞检测(矩形碰撞、圆形碰撞、像素碰撞)
- Android碰撞检测——矩形检查
- Android线段与矩形碰撞检测函数
- Flash游戏学习笔记:矩形检测碰撞
- Flash游戏学习笔记:矩形检测碰撞
- android 线段与矩形碰撞检测
- Flash游戏学习笔记:矩形检测碰撞
- cocos2d-x 菜鸟学习笔记十五(简单的碰撞检测 实践篇 上)
- 圆与未旋转矩形的碰撞检测(上篇)
- cocos2d-x 矩形碰撞检测
- [Android新手学习笔记28]-Broadcast-例一广播检测网络变化
- cocos2d-x 菜鸟学习笔记十六(简单的碰撞检测 实践篇 中)
- 【Unity3D】学习笔记(第7记)射线碰撞检测
- Android游戏中的碰撞检测
- 学习 Box2D 个人笔记(十)碰撞检测
- 碰撞检测算法:点和矩形碰撞、矩形碰撞
- 圆与旋转矩形的碰撞检测(下篇)
- 五 CocosEditor基础教程第二季 之矩形碰撞检测
- cocos2d-x中矩形的碰撞检测
- 状态添加Android游戏开发十日通(4)-行走,跳跃,碰撞检测