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