Benutzer-Werkzeuge

Webseiten-Werkzeuge


start:skript:tut4

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
start:skript:tut4 [2018/11/12 17:23]
luismeixner
start:skript:tut4 [2018/11/12 17:33] (aktuell)
luismeixner
Zeile 29: Zeile 29:
 <code java> <code java>
 class Ball { class Ball {
-  float SIZE = 30; // Durchmesser +  float SIZE = 30; //​Durchmesser 
-  float xMax; // Max. x-Koordinate ​fuer die Generierung mit random() +  float xMax; //Max. x-Koordinate ​für die Generierung mit random() 
-  float speedMax; // Max. Geschwindigkeit ​fuer die Generierung mit random() +  float speedMax; //Max. Geschwindigkeit ​für die Generierung mit random() 
-  float x; // aktuelle x-Koordinate +  float x; //aktuelle x-Koordinate 
-  float y; // aktuelle y-Koordinate +  float y; //aktuelle y-Koordinate 
-  float speed; // Geschwindigkeit+  float speed; //​Geschwindigkeit
  
   Ball(float xMax, int speedMax) {   Ball(float xMax, int speedMax) {
     this.xMax = xMax;     this.xMax = xMax;
     this.speedMax = speedMax;     this.speedMax = speedMax;
-    x = random(xMax);​ // generiere die Position "zufaellig"​(Zufallszahl von 0 bis xMax)+    x = random(xMax);​ //generiere die Position "zufällig"​(Zufallszahl von 0 bis xMax)
     y = 0;     y = 0;
-    speed = random(speedMax);​ // generiere die Geschwindigkeit "zufaellig"+    speed = random(speedMax);​ //generiere die Geschwindigkeit "zufällig"
   }   }
  
-  // Zeichnet den Ball+  //Zeichnet den Ball:
   void draw() {   void draw() {
     ellipse(x, y, SIZE, SIZE);     ellipse(x, y, SIZE, SIZE);
Zeile 50: Zeile 50:
  
   void fall() {   void fall() {
-    y = y + speed; // y-Koordinate in jedem Durchlauf um die Konstante speed erhöhen -> konstante Bewegung+    y = y + speed; //​y-Koordinate in jedem Durchlauf um die Konstante speed erhöhen -> konstante Bewegung
     if (y>=400) {     if (y>=400) {
-      // falls die untere Seite erreicht wurde, "​werfe"​ den Ball neu:+      //falls die untere Seite erreicht wurde, "​werfe"​ den Ball neu:
       restart();       restart();
     }     }
   }   }
  
-  // "​Wirft"​ den Ball wieder:+  //"​Wirft"​ den Ball wieder:
   void restart() {   void restart() {
-    y = -200; // eine kleine Pause einbauen, bevor der Ball wieder auf der Zeichenfläche erscheint +    y = -200; //eine kleine Pause einbauen, bevor der Ball wieder auf der Zeichenfläche erscheint 
-    x = random(xMax);​ // neue x-Koordinate zuweisen+    x = random(xMax);​ //neue x-Koordinate zuweisen
     speed = random(speedMax);​ //neue Geschwindigkeit zuweisen     speed = random(speedMax);​ //neue Geschwindigkeit zuweisen
   }   }
  
-  // Loescht ​den Ball und "​wirft"​ ihn neu, falls Ball angeklickt wurde+  //Löscht ​den Ball und "​wirft"​ ihn neu, falls Ball angeklickt wurde
   void clicked() {   void clicked() {
-    if (sqrt(sq(mouseX - x) + sq(mouseY - y)) < SIZE/2) { // überprüfen ob Länge des Verbindungsvektors zwischen Mauszeiger und Kugelmittelpunkt kleiner als der Radius der Kugel ist(Vektorgeometrie)+    if (sqrt(sq(mouseX - x) + sq(mouseY - y)) < SIZE/2) { //​überprüfen ob Länge des Verbindungsvektors zwischen Mauszeiger und Kugelmittelpunkt kleiner als der Radius der Kugel ist(Vektorgeometrie)
       restart();       restart();
     }     }
Zeile 74: Zeile 74:
 ==Hauptprogramm falling_balls== ==Hauptprogramm falling_balls==
 <code java> <code java>
-Ball ball1 = new Ball(600, 3);// erzeuge 5 "​globale" ​Baelle ​mit random-Position und -geschwindigkeit+Ball ball1 = new Ball(600, 3);//​erzeuge 5 "​globale" ​Bälle ​mit random-Position und -geschwindigkeit
 Ball ball2 = new Ball(600, 3); Ball ball2 = new Ball(600, 3);
 Ball ball3 = new Ball(600, 3); Ball ball3 = new Ball(600, 3);
Zeile 85: Zeile 85:
  
 void draw() { void draw() {
-  clear(); +  clear(); ​//Löschen des Grafikfensters bei jedem Durchgang um eine Bewegung der Bälle zu erzeugen 
-  ball1.draw();​+  ball1.draw(); ​//Zeichnen des Balls
   ball2.draw();​   ball2.draw();​
   ball3.draw();​   ball3.draw();​
Zeile 98: Zeile 98:
 } }
  
-// Wird beim Klicken aufgerufen:​ +//Wird beim Klicken aufgerufen:​ 
-void mouseClicked() { +void mouseClicked() { //wird aufgerufen nachdem die linke Maustaste gedrückt und wieder losgelassen wurde 
-  ball1.clicked();​+  ball1.clicked(); ​//Aufrufen der clicked-Funktion der Objekte
   ball2.clicked();​   ball2.clicked();​
   ball3.clicked();​   ball3.clicked();​
Zeile 113: Zeile 113:
 <code java> <code java>
 class Quadrat { class Quadrat {
-  float size; // Größe +  float size; //Größe 
-  float x; // aktuelle x-Koordinate +  float x; //aktuelle x-Koordinate 
-  float y; // aktuelle y-Koordinate+  float y; //aktuelle y-Koordinate
  
   Quadrat (float x, float y) {   Quadrat (float x, float y) {
Zeile 135: Zeile 135:
 } }
  
-void draw() {+void draw() { //draw() ist zwar leer muss aber stehen bleiben, da das Programm sonst nach einmaligem Durchführen der Setup-Funktion nicht weiter laufen würde
 } }
  
-void mouseClicked() {+void mouseClicked() { //wird aufgerufen nachdem die linke Maustaste gedrückt und wieder losgelassen wurde
   Quadrat quadrat = new Quadrat(mouseX,​ mouseY); //neues Objekt der Klasse Quadrat erstellen   Quadrat quadrat = new Quadrat(mouseX,​ mouseY); //neues Objekt der Klasse Quadrat erstellen
   quadrat.draw();​ //auf die Funktion draw des Objektes zugreifen   quadrat.draw();​ //auf die Funktion draw des Objektes zugreifen
 } }
 </​code>​ </​code>​
start/skript/tut4.1542039797.txt.gz · Zuletzt geändert: 2018/11/12 17:23 von luismeixner