P5.JS:碰撞?

P5.JS: Collisions?

我有一个想法,如果在圆圈区域的任何地方都有这个名为 "food" 的对象,那么这个圆圈就会变大。虽然我不知道如何在我的代码上实现它。我已经尝试过了,但当然我的想法的整个概念在试图实现这一目标时是错误的。

this.touch = function(){
    if (x > this.x && y > this.y){
        this.radius += 0.5;
    }
}

这是我在构造函数中的一个函数,变量 x 和 y 引用 "food" 的位置。这个。(变量)指的是对食物做出反应的对象。

上面的代码片段不起作用,只是因为我要求对象根据 x 和 y 位置增加大小,这对我的概念不起作用。

任何人都可以给我一些提示或发送一个 link 给一些可以帮助的东西。

提前致谢!

我首先在谷歌上搜索 碰撞检测 之类的东西以获得大量结果。

您还可以通过添加所讨论的形状类型来缩小搜索范围。比如你的食物显示为一个点,你可能google(点圆碰撞检测)。如果你的食物显示为一个圆,你可能google "circle circle collision detection".

如果您要处理圆,您基本上想要检查距圆心的距离。如果该距离小于圆的半径,那么就会发生碰撞。 dist()函数在这里会派上用场。

无耻的自我推销:here是碰撞检测的教程。它是为处理而编写的,但所有概念也适用于 P5.js。