gpt4 book ai didi

javascript - p5.j​​s 使用if语句不满足条件时画框

转载 作者:行者123 更新时间:2023-11-30 06:10:10 25 4
gpt4 key购买 nike

几个小时以来,我一直在用这个来解决问题。当光标位于某个位置时,我必须使用 if 语句创建形状,我已经完成了。如果两个条件都不满足,我还需要画一个形状,我只完成了一半。是否有人能够就我完成任务需要考虑的内容提供一些指导? enter image description here

function draw()
{
// draw the image
image(img,0,0);

//Write your code below here ...

//91m distance dark circle
if(dist(mouseX, mouseY,1491, 585)<= 91)
{
fill(0,139,139);
ellipse(1491, 585,91 * 2, 91 * 2);

}
//Fish wholsalers
if(mouseX > 1590 && mouseX < 1691
&& mouseY > 614 && mouseY < 691)
{
fill(25, 25, 112)
rect(1590,614,104,77)

}
//neither position
if(dist(mouseX, mouseY,1491, 585)>= 91 && (mouseX > 1690 && mouseX < 1590 && mouseY < 614 && mouseY > 691) )
{
fill(124, 252, 0)
rect(1564, 183, 322, 173 )
}

最佳答案

最简单的解决方案是使用 2 个变量。

判断鼠标是否为in_range :

var in_range = dist(mouseX, mouseY,1491, 585)<= 91;

判断鼠标是否在边界内:

var in_bounds = mouseX > 1590 && mouseX < 1691 && mouseY > 614 && mouseY < 691; 

根据条件绘制矩形in_range , in_bounds分别!in_range && !in_bounds .

var in_range = dist(mouseX, mouseY,1491, 585)<= 91;
var in_bounds = mouseX > 1590 && mouseX < 1691 && mouseY > 614 && mouseY < 691;

if (in_range)
{
fill(0,139,139);
ellipse(1491, 585,91 * 2, 91 * 2);
}

if (in_bounds)
{
fill(25, 25, 112)
rect(1590,614,104,77)
}

if(!in_range && !in_bounds)
{
fill(124, 252, 0)
rect(1564, 183, 322, 173 )
}

如果不允许使用变量:

< 的反义词是>=>相反是<= .
A && B 的反义词是!(A && B)分别!A || !B .
x > A && x < B 的反义词是x >= A || x <= B .

你的情况是:

if (!(dist(mouseX, mouseY,1491, 585) <= 91) &&
!(mouseX > 1590 && mouseX < 1691 && mouseY > 614 && mouseY < 691))
{
fill(124, 252, 0)
rect(1564, 183, 322, 173 )
}

或者

if (dist(mouseX, mouseY,1491, 585) > 91 &&
(mouseX <= 1590 || mouseX >= 1691 || mouseY <= 614 || mouseY >= 691))
{
fill(124, 252, 0)
rect(1564, 183, 322, 173 )
}

关于javascript - p5.j​​s 使用if语句不满足条件时画框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59339000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com