我正在使用processing.js进行编码。我希望size变量在光标(鼠标)处理椭圆时变大,并在光标远离椭圆时变小。尺寸应该(如果可能的话)限制在最小50和最大200之间。有什么办法可以实现吗?
我已经在线查看,但似乎没有大量文档(至少我正在搜索的内容)。
这是我的代码:
void setup()
{
// Setting up the page
size(screen.width, screen.height);
smooth();
background(0, 0, 0);
// Declaring the variable size ONCE
size = 50;
}
void draw()
{
background(0, 0, 0);
// I want the size variable to be greater as the cursor approches the ellipse and to be smaller as the cursor moves away from the ellipse. The size is limited if possible between 50 and 200
// Here is the variable that needs to be changed
size = 50;
// Drawing the concerned ellipse
ellipse(width/2, height/2, size, size);
}
感谢。
答案 0 :(得分:0)
首先,您需要获得从鼠标到椭圆的距离:
float distance = dist(mouseX,mouseY, width/2,height/2);
然后,您需要将该距离转换为更有用的范围。我们将调用结果dia
,因为size()
也是Processing中命令的名称。我们还希望dia
随着距离变小而变大。
对于这两件事,我们会使用map()
来获取输入值,它的范围和输出范围:
float dia = map(distance, 0,width/2, 200,50);
当distance
为0时,dia = 200
当distance
为屏幕宽度除以2 dia = 50
时。