klassen2:inheritance:flyingrectangle:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
klassen2:inheritance:flyingrectangle:start [2020/05/03 10:34] – [2. Erweitern der Klasse Rectangle] Martin Pabst | klassen2:inheritance:flyingrectangle:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 102: | Zeile 102: | ||
==== 3. Animation ==== | ==== 3. Animation ==== | ||
- | In der Grafikbibliothek von LearnJ besitzt jedes graphische Objekt eine Methode '' | + | In der Grafikbibliothek von LearnJ besitzt jedes graphische Objekt eine Methode '' |
< | < | ||
Zeile 126: | Zeile 126: | ||
} | } | ||
+ | }</ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | ==== 4. Fliegen! ==== | ||
+ | Um das Rechteck " | ||
+ | Jetzt müssen wir das Rechteck in der Methode '' | ||
+ | |||
+ | === Bewegungsgleichungen === | ||
+ | Position und Geschwindigkeit werden also gemäß folgender Gleichungen 30-mal in der Sekunde neu berechnet: | ||
+ | {{ : | ||
+ | |||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | new World(800, 800); | ||
+ | while(true) { | ||
+ | new FlyingRectangle(); | ||
+ | } | ||
+ | |||
+ | class FlyingRectangle extends Rectangle { | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | super(360, 760 - 40, 80, 80); | ||
+ | setFillColor(Math.round(Math.random() *(256 *256 * 256 - 1)), Math.random()*0.8+0.2); | ||
+ | |||
+ | vx = Math.random() * 10 - 5; // Anfangsgeschwindigkeit in x-Richtung | ||
+ | vy = Math.random() * (-20) - 6; // Anfangsgeschwindigkeit in y-Richtung | ||
+ | |||
+ | } | ||
+ | |||
+ | // Die folgende Methode act wird vom System 30-mal pro Sekunde aufgerufen: | ||
+ | | ||
+ | move(vx, vy); // Vorwärtsbewegen des Rechtecks | ||
+ | vy = vy + 0.4; // Gravitation | ||
+ | if(getCenterY() > 900) { | ||
+ | | ||
+ | } | ||
+ | } | ||
}</ | }</ | ||
klassen2/inheritance/flyingrectangle/start.1588494852.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)