void setup(){
size(100,100);
fill(255,255,255);
rect(0,0,50,50);
rect(50,50,100,0);
rect(50,50,0,100);
rect(50,50,100,100);
}
void draw(){
}
void mousePressed(){
if ((mouseX <= 50) && (mouseY <= 50)){
fill(random(0,255),random(0,255),random(0,255));
rect(0,0,50,50);
}
if ((mouseX >= 50) && (mouseY >= 50)){
fill(random(0,255),random(0,255),random(0,255));
rect(50,50,100,100);
}
if ((mouseX >= 50) && (mouseY <= 50)){
fill(random(0,255), random(0,255), random(0,255));
rect(50,50,100,0);
}
if ((mouseX <= 50) && (mouseY >= 50)){
fill (random(0,255),random(0,255),random(0,255));
rect(50,50,0,100);
}
}
您好,我是最近向Processing 3推出的新程序员。当我运行此代码时,缺少2个方块(右上角和左下角)。我已经审核了代码,但我没有看到任何错误。如果有人知道代码中有什么问题,请告诉我。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:1)
让我们看看rect()
功能the reference:
默认情况下,前两个参数设置左上角的位置,第三个设置宽度,第四个设置高度。
现在让我们看看您遇到问题的两行代码:
rect(50,50,100,0);
这个矩形的0
像素高,所以你不会看到它。类似地:
rect(50,50,0,100);
此矩形的宽度为0
像素,因此您无法看到它。
我猜你认为最后两个参数是右下角,但默认情况并非如此。当然,您可以使用rectMode()
函数更改此内容:
rectMode(CORNERS);