topical media & game development

talk show tell print

graphic-processing-learning-08-example-8-2-example-8-2.pde / pde



  // Learning Processing
  // Daniel Shiffman
  // http://www.learningprocessing.com
  
  // Example 8-2: Two Car objects
  
  Car myCar1;
  Car myCar2; // Two objects!
  
  void setup() {
    size(200,200);
    myCar1 = new Car(color(255,0,0),0,100,2); // Parameters go inside the parentheses when the object is constructed.
    myCar2 = new Car(color(0,0,255),0,10,1);
  }
  
  void draw() {
    background(255);
    myCar1.move();
    myCar1.display();
    myCar2.move();
    myCar2.display();
  }
  
  class Car { // Even though there are multiple objects, we still only need one class. No matter how many cookies we make, only one cookie cutter is needed.Isn’t object-oriented programming swell?
    color c;
    float xpos;
    float ypos;
    float xspeed;
  
    Car(color tempC, float tempXpos, float tempYpos, float tempXspeed) { // The Constructor is defined with arguments.
      c = tempC;
      xpos = tempXpos;
      ypos = tempYpos;
      xspeed = tempXspeed;
    }
  
    void display() {
      stroke(0);
      fill(c);
      rectMode(CENTER);
      rect(xpos,ypos,20,10);
    }
  
    void move() {
      xpos = xpos + xspeed;
      if (xpos > width) {
        xpos = 0;
      }
    }
  }


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.