Der Code zum selbst Ausprobieren
Raumschiff schiff = new Raumschiff(150,150, 15);
Raumschiff schiff2 = new Raumschiff(150,250, 15);
Raumschiff schiff3 = new Raumschiff(50,250, 15);
int winkel = 0;
void setup() {
size(400,400);
background(120);
}
void draw() {
background(120);
schiff.setRotation(winkel++);
schiff.display();
schiff2.setRotation(45+winkel++);
schiff2.display();
schiff3.setRotation(45+winkel++);
schiff3.setScale(1.2);
schiff3.display();
delay(5);
}
class Raumschiff {
int x, y;
int hoeheSchiff;
int rotation; // 0....360 Grad
float scale_ = 1;
Raumschiff(int x_, int y_, int h) {
x = x_;
y = y_;
hoeheSchiff = h;
}
void setRotation(int r) {
rotation = r;
}
void setScale(float s) {
scale_ = s;
}
void display() {
pushMatrix();
translate(x, y);
scale(scale_);
rotate(radians(rotation));
translate(-x, -y);
triangle(x-hoeheSchiff, y-hoeheSchiff, x+hoeheSchiff, y-hoeheSchiff, x, y+hoeheSchiff);
popMatrix();
}
}