Rectangle对象在游戏开发中的应用2

上一次发了Rectangle对象的应用 ,觉得有必要补充一下,希望朋友们活学活用

应用三:对两个并不存在的对象进行碰撞检测


有的时候你想进行碰撞的两个物体并不存在,那么我们就无法通过正常的hitTest手段检测两个物体是否发生了碰撞。这个时候通过Rectangle对象无疑是最方便的。


下面举出两个例子来说明一下这种应用:





首先说明上图的假设并不多见,但我只是想通过这个不怎么恰当的例子说明Rectangle的一种应用。

上图如果我们只想知道“葡萄MM“是否走到了矩形A的区域,而不管其他的。这个时候我们的Rectangle又一次发挥了作用。

因为这个建筑和mm的位置都是针对与
地图 坐标系的,所以我们可以针对于建筑左顶点的偏移量来确定矩形A的坐标和宽度高度

同样我们可以通过葡萄mm的左顶点和矩形B相对于这一点的偏移量来矩形B的坐标和大小。


假设建筑的左顶点坐标为:2000,1200, 矩形相对于左顶点的偏移量为50,50,大小为80,30

那么我们可以很快得到矩形A初始值:recA=new (2000+50,1200+30,80,30)

同理我们可以得到矩形B的区域了,有了这两个矩形那么我们只要调用一下任意一个矩形的相交判断方法就行了recA.intersects(recB).

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值