zoukankan      html  css  js  c++  java
  • javascript判断碰撞检测

    javascript判断碰撞检测

    点与矩形的碰撞检测


    <pre>
    /**
    *
    * @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;
    }
    </pre>

    矩形与矩形的碰撞检测

    <pre>
    /**
    * 检测两个矩形是否碰撞
    * @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;
    }
    </pre>

    ps:不支持旋转的矩形碰撞测试

  • 相关阅读:
    OpenJ_Bailian
    Codeforces Global Round 2: D.Frets On Fire
    Gym 102035 NWU2019组队赛2.0
    Gym 102035H :Zuhair and the Dag
    Gym 102035E:New Max
    Gym
    Linux常用命令-总结
    Linux常用命令
    Linux常用命令
    分布式会话 拦截器 单点登录
  • 原文地址:https://www.cnblogs.com/newmiracle/p/11864776.html
Copyright © 2011-2022 走看看