Bewegung eines Balles in Richtung Mouse: Unterschied zwischen den Versionen
(→Der Code zum selbst Ausprobieren) |
|||
Zeile 37: | Zeile 37: | ||
} | } | ||
+ | |||
void bewegen() { | void bewegen() { | ||
− | + | PVector mouse = new PVector(mouseX, mouseY); | |
− | + | mouse.sub(ort); | |
− | + | mouse.setMag(20); | |
− | + | beschleunigung = mouse; | |
− | + | //beschleunigung = PVector.random2D(); | |
− | + | geschwindkeit.add(beschleunigung); | |
− | + | geschwindkeit.limit(2); | |
− | + | ort = ort.add(geschwindkeit); | |
} | } | ||
Aktuelle Version vom 29. März 2020, 15:56 Uhr
Der Code zum selbst Ausprobieren
Wanderer wandersfrau; Wanderer wandersmann; void setup() { size(400,400); wandersfrau = new Wanderer(200,200); wandersmann = new Wanderer(0,0); } void draw() { background(120); wandersfrau.bewegen(); wandersfrau.beamen(); wandersfrau.display(); wandersmann.bewegen(); wandersmann.beamen(); wandersmann.display(); } class Wanderer { PVector ort; PVector geschwindkeit; PVector beschleunigung; Wanderer(float x, float y) { ort = new PVector(x,y); geschwindkeit = new PVector(-1,10); //beschleunigung = new PVector(0.1,0); } void bewegen() { PVector mouse = new PVector(mouseX, mouseY); mouse.sub(ort); mouse.setMag(20); beschleunigung = mouse; //beschleunigung = PVector.random2D(); geschwindkeit.add(beschleunigung); geschwindkeit.limit(2); ort = ort.add(geschwindkeit); } void display() { circle(ort.x, ort.y, 50); } void beamen() { if (ort.x > width) { ort.x = 0; } if (ort.x < 0) { ort.x = width; } if (ort.y > height) { ort.y = 0; } if (ort.y < 0) { ort.y = height; } } }