在Processing中移动一组形状

时间:2018-02-12 23:55:47

标签: processing

我有以下代码移动一组矩形和圆形,但由于某种原因它始终保持以前的形状。我想删除以前的形状,只绘制新的形状(所以看起来我的形状正在移动)。我最终得到了这个:

enter image description here

但它应该看起来像一辆卡车正在移动。以下是我的代码:

   public class Truck extends Vehicle {

     public Truck(float size, float speed) {
         super(size, speed);
     }
     int x = width-250;

    void display() {
        while (x > -100) {
        scale(size); 
        translate(-1, 0);
        fill(255, 0, 0);
        rect(x, 500, 200, 100); //body
        rect(x-75, 525, 75, 75); //front
        fill(0);
        rect(x-75, 525, 45, 45); //window
        ellipse(x-60, 610, 45, 45);
        ellipse(x-20, 605, 35, 35);
        ellipse(x+160, 610, 45, 45);
        ellipse(x+117, 605, 35, 35);
        delay(1);
        x--;
    }
  }

}

1 个答案:

答案 0 :(得分:0)

所以我对JavaScript版本的处理有很多经验,如果你添加: background(255); 在你绘制所有内容之前,我认为这将解决你的问题。 这是因为形状留下了一条线索"当他们移动时,他们背后的种类。除非您定期绘制背景,否则该轨迹将可见。