canvas碰撞检测(光线投射法)原理 两物体A、B, 该方法假设碰撞时物体A运动,物体B不动,如果满足A速度方向直线与B物体顶部水平直线交点落在物体边界之间并且物体A在B的下方,则认为物体A、B碰撞 转化为数学模型为求两条直线的交点(x,y)有: y = k1 * x + b1; // @1 y = k2 * x + b2; // @2 x >= B.x && x <= B.x + B.width && y >= B.y && y <= B.y + B.height; 联立方程1,2解得: x = (b2 - b1) / (k1 - k2); y = (k1 * b2 - k2 * b1) / (k1 - k2); 使用场景 只适用于物体从上方掉落的情况,如球是否完全掉入桶中