0

我想在处理中按一个按钮来添加/删除一个椭圆。我使用 void keyPressed() 和 void keyReleased() 作为键。但是如何使用 if 语句来添加/删除椭圆?

现在我可以添加更多,并删除一些省略号。例如,如果我有一个,我可以按一个按钮,然后再有一个。或按一个按钮删除一个。但现在我想为每个椭圆使用不同的键集来移动这些椭圆(最多 4 个)。我怎样才能做到这一点?

4

2 回答 2

2

您需要做的是在绘制椭圆时读取一个布尔值。如果是真的画它,如果不是不要!按键应该只是切换该布尔值。像这样:

boolean iShouldDrawTheEllipse = true;
void draw() {
  background(0);
  if(iShouldDrawTheEllipse) ellipse(50,50,10,10);
}
void keyPressed() {
  iShouldDrawTheEllipse = !iShouldDrawTheEllipse;
}
于 2013-10-12T11:27:25.060 回答
0

您可以使用 some booleans 来确定必须打印哪些椭圆,哪些不需要。

例如

void keyPressed(){
  switch(keyCode){
    case 'z':
      drawingFirstEllipse = !drawingFirstEllipse;
      break;
    case 'x':
      drawingSecondEllipse = !drawingSecondEllipse;
    break;
    case 'c':
      drawingThirdEllipse = !drawingThirdEllipse;
    break;
    case 'v':
      drawingFourthEllipse = !drawingFourthEllipse;
    break;
  }
}

然后在您的void draw(void)方法中,您可以轻松绘制椭圆:

void draw(){
  background(0);
  if(drawingFirstEllipse) ellipse(50, 50, 10, 10);
  if(drawingSecondEllipse) ellipse(50, 50, 70, 10);
  if(drawingThirdEllipse) ellipse(50, 50, 130, 10);
  if(drawingFourthEllipse) ellipse(50, 50, 190, 10);
}

我希望我能帮助 [;

于 2013-10-12T22:25:40.697 回答