Unbenanntes Dokument

Serie 11: Threads


1)

Zwei Turtles zeichnen gleichzeitig eine Figur, die aus Quadraten verschiedener Grösse besteht.

 

 

2)

Vier Turtles zeichnen gleichzeitig Treppen und füllen die Fläche unter der Treppenlinie mit ihren Stiftfarben.

 

 

3)

Mit jedem Mausklick wird eine neue Turtle erzeugt. Das Zeichnen der Blumen erfolt für jede Turtle im eigenen Thread. Dadurch können gleichzeitig beliebig viele zeichnende Turtles erzeugt werden.

 

 

4) In der Serie 8 hast du folgende Aufgabe gelöst:
Zwei Turtles bewegen sich mit zufälligen Strecken und zufälligen Winkeln
z.Bsp: left(-180 + 360 * Math.random()). Wenn sie sich zu Nahe kommen ertönt ein Ton, die beden Turtles löschen Ihre Spuren und danach bewegen sich erneut zufällig.

Ohne Verwendung von Threads können sich zwei Turtles nicht gleichzeitig bewegen. Sie zeichnen abwechlungsweise.

A) Löse diese Aufgabe mit Threads, so dass die beiden Turtles gleichzeitig bewegen.

 

B) Eine Turtle john bewegt sich nicht zufällig, sondern jeweils um eine kurze Strecke in der Richtung zu Turtle luka (john verfolgt luka). Um die Richtung zu Turtle luka zu bestimmen und zu setzen kannst du die Methoden towards() und heading() verwenden:

double x = luka.getX();
double y = luka.getY();
double w = john.towards(x, y);
john.heading(w);