// Learning Processing
// Daniel Shiffman
// http://www.learningprocessing.com
// Example 9-9: An array of Car objects
Car[] cars = new Car[100]; // An array of 100 Car objects!
void setup() {
size(200,200);
smooth();
for (int i = 0; i < cars.length; i ++ ) { // Initialize each Car using a for loop.
cars[i] = new Car(color(i*2),0,i*2,i/20.0);
}
}
void draw() {
background(255);
for (int i = 0; i < cars.length; i ++ ) { // Run each Car using a for loop.
cars[i].move();
cars[i].display();
}
}
// Learning Processing
// Daniel Shiffman
// http://www.learningprocessing.com
// Example 9-9: An array of Car objects
// The Car class does not change whether we are making one car, 100 cars or 1,000 cars!
class Car {
color c;
float xpos;
float ypos;
float xspeed;
Car(color c_, float xpos_, float ypos_, float xspeed_) {
c = c_;
xpos = xpos_;
ypos = ypos_;
xspeed = xspeed_;
}
void display() {
rectMode(CENTER);
stroke(0);
fill(c);
rect(xpos,ypos,20,10);
}
void move() {
xpos = xpos + xspeed;
if (xpos > width) {
xpos = 0;
}
}
}
What does “_” mean with regards to the code?
Comment by Jwhatley — March 16, 2010 @ 6:30 pm
It doesn’t mean anything. It’s just a programmer’s convention to use an underscore when a variable coming in as an argument is assigned to a variable within the class. You could just as easily write:
Car(color tempC) { c = tempC; }or
Car(color asdfasdfwe) { c = asdfasdfwe; }Comment by Daniel Shiffman — March 18, 2010 @ 9:42 am