0

我在处理某些对象时遇到问题。代码应该有两个显示和移动的对象。但我只看到一个显示和移动的对象。也许我缺少一些东西。查看代码。

Rule myRule;
Rule myRule1;

void setup() {
  size(200,200);
  smooth();

  //Initialize rule objects
  myRule = new Rule(0,100,1);
  myRule1 = new Rule(0,140,20);
}



void draw() {
  background(255);
  //int x1 = 0;
  //int y1 = 0;
  //Operate Rule object
  myRule.move();
  myRule.display();
  myRule1.move();
  myRule1.display();
}


class Rule {

  float x;
  float y;
  float spacing;
  float speed;

  Rule(float x1, float y1, float s1) {
    x = x1;
    y = y1;
    spacing = 10;
    speed = s1;
  }

  void move() {
    x = x + speed;
    if((x > width) || (x < 0)) {
      speed = speed * -1;
    }
  }

  //Display lines at x location
  void display() {
    stroke(0);
    fill(175);
    line(x, height/2, width/2, height/2);
  }
}
4

1 回答 1

0

中的一个错字Rule.display()。你可能的意思是

线(x,y,宽度/2,高度/2);

于 2010-08-13T21:11:02.737 回答