【代码分享】碰撞检测原理及逻辑表达式

碰撞检测就是检测两个物体边缘是不是有重叠,此例以方形为例,圆形物体暂时不考虑。
 
假设舞台上有aa和bb两个物体,以下四种情况需要同时满足,才能判断重叠。
 
1. aa左值 加 aa的宽 大于 bb的左值

11.png

 
{{aa.left}}+{{aa.width}}>{{bb.left}}
 
2. bb左值 加 bb的宽 大于 aa的左值

22.png

 
{{bb.left}}+{{bb.width}}>{{aa.left}} 
 
3. aa的上值 加 aa的高 大于 bb的上值

33.png

 
{{aa.top}}+{{aa.height}}>{{bb.top}}
 
4. bb的上值 加 bb的高 大于 aa 的上值

44.png

 
{{bb.top}}+{{bb.height}} > {{aa.top}}
 
四个行为同时成立就是
 
{{aa.left}}+{{aa.width}}>{{bb.left}} && {{bb.left}}+{{bb.width}}>{{aa.left}} && {{aa.top}}+{{aa.height}}>{{bb.top}} && {{bb.top}}+{{bb.height}} > {{aa.top}}
 
 
可以打开作品看效果或者另存
 
https://www.mugeda.com/animation/edit/9d204fda

0 个评论

要回复文章请先登录注册