js简单元素碰撞检测


function checkCrash(Ax,Ay,Awidth,Aheight,Bx,By,Bwidth,Bheight){
            var bool=true;
            if((Ax+Awidth)<Bx||(Bx+Bwidth)<Ax||(Ay+Aheight)<By||(By+Bheight)<Ay){
                bool=false
            }
            return bool
        }

Ax,Ay,Awidth,Aheight 分别为元素A的x坐标、y坐标、宽度、高度

Bx,By,Bwidth,Bheight 分别为元素B的x坐标、y坐标、宽度、高度

思路:

 

假设A元素在中间:

  B元素整体在边界线3上方,A与B不可能发生碰撞

  B元素整体在边界线4下方,A与B不可能发生碰撞

  B元素整体在边界线1左方,A与B不可能发生碰撞

  B元素整体在边界线2右方,A与B不可能发生碰撞

当以上4种情况满足其中一种,即不会发生碰撞




 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM