我有一个想法,如果在圆的区域中的任何地方有一个称为“食物”的对象,则使圆的尺寸增大。虽然我不知道如何在我的代码上实现它。我已经尝试过了,但是我的想法的整个概念当然是在尝试实现这一点上。
this.touch = function(){
if (x > this.x && y > this.y){
this.radius += 0.5;
}
}
这是我在构造函数中的功能之一,变量x和y引用“食物”的位置。 this。(变量)是指对食物起反应的对象。
顶部的代码段不仅仅适用于以下事实,即我要根据x和y位置来增大对象的大小,而这实际上不适用于我的概念。
任何人都可以给我一些提示或发送指向可能有帮助的链接。
谢谢!
答案 0 :(得分:1)
首先,我会搜索诸如碰撞检测之类的东西以获得大量结果。
您还可以通过添加您正在谈论的形状类型来缩小搜索范围。例如,如果您的食物显示为一个点,则可以使用google(点圆碰撞检测)。如果您的食物显示为一个圆圈,则可以使用Google“圆形圆圈碰撞检测”。
如果要处理圆,则基本上要检查距圆心的距离。如果该距离小于圆的半径,则发生碰撞。 dist()
功能将在这里派上用场。
无耻的自我促进:here是有关冲突检测的教程。它是为处理而编写的,但是所有概念也都适用于P5.js。