mirror of
https://github.com/processing/processing4.git
synced 2026-02-06 23:29:30 +01:00
37 lines
833 B
Plaintext
37 lines
833 B
Plaintext
// Learning Processing
|
|
// Daniel Shiffman
|
|
// http://www.learningprocessing.com
|
|
|
|
// Example 22-1: Inheritance
|
|
|
|
class Circle extends Shape {
|
|
|
|
// Inherits all instance variables from parent + adding one
|
|
color c;
|
|
|
|
Circle(float x_, float y_, float r_, color c_) {
|
|
super(x_,y_,r_); // Call the parent constructor
|
|
c = c_; // Also deal with this new instance variable
|
|
}
|
|
|
|
// Call the parent jiggle, but do some more stuff too
|
|
void jiggle() {
|
|
super.jiggle();
|
|
// The Circle jiggles its size as well as its x,y location.
|
|
r += random(-1,1);
|
|
r = constrain(r,0,100);
|
|
}
|
|
|
|
// The changeColor() function is unique to the Circle class.
|
|
void changeColor() {
|
|
c = color(random(255));
|
|
}
|
|
|
|
void display() {
|
|
ellipseMode(CENTER);
|
|
fill(c);
|
|
stroke(0);
|
|
ellipse(x,y,r,r);
|
|
}
|
|
}
|