javascript判断碰撞检测
点与矩形的碰撞检测
/** * * @param x1 点 * @param y1 点 * @param x2 矩形view x * @param y2 矩形view y * @param w 矩形view 宽 * @param h 矩形view 高 * @return */ function isCollsion(x1,y1,x2,y2,w,h) { if (x1 >= x2 && x1 <= x2 + w && y1 >= y2 && y1 <= y2 + h) { console.log('碰撞'); return true; } console.log('没碰撞'); return false; }
矩形与矩形的碰撞检测
/** * 检测两个矩形是否碰撞 * @param x1 矩形1view x * @param y1 矩形1view y * @param w1 矩形1view 宽 * @param h1 矩形1view 高 * @param x2 矩形2view x * @param y2 矩形2view y * @param w2 矩形2view 宽 * @param h2 矩形2view 高 * @return */ function isCollsionWithRect(x1,y1,w1,h1,x2,y2,w2,h2) { if (x1 >= x2 && x1 >= x2 + w2) { console.log('没碰撞'); return false; } else if (x1 <= x2 && x1 + w1 <= x2) { console.log('没碰撞'); return false; } else if (y1 >= y2 && y1 >= y2 + h2) { console.log('没碰撞'); return false; } else if (y1 <= y2 && y1 + h1 <= y2) { console.log('没碰撞'); return false; } console.log('碰撞'); return true; }