Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Rekursive Grafiken Reklursive Grafiken.

Ähnliche Präsentationen


Präsentation zum Thema: "Rekursive Grafiken Reklursive Grafiken."—  Präsentation transkript:

1 rekursive Grafiken Reklursive Grafiken

2 Beispiele für Grafische Rekursionen
Reklursive Grafiken

3 Zur Erinnerung: Wie zeichnen wir mit der Turtle
import turtle.*; import java.awt.*; public class Quadrat1 extends TurtleFrame { Turtle t1; public Quadrat1(String title) { super(title); t1 = new Turtle(tWin); } public void zeichne() { t1.forward(100); t1.right(90); public static void main (String[] args) { new Quadrat1("Quadrat1"); Reklursive Grafiken

4 Zustände nach diversen Klicks
Zur Erinnerung: Die API der Turtle zeigt alle ihre Methoden Reklursive Grafiken

5 Die Turtle zeichnet ein T auf dem Kopf
public void zeichne() { t1.jumpTo(0,150); t1.forward(-100); t1.right(90); t1.forward(100); t1.forward(-200); } Reklursive Grafiken

6 public void zeichne() { double l = 100; t1.jumpTo(0,150);
BinärBaum public void zeichne() { double l = 100; t1.jumpTo(0,150); t1.zeichneBinaerBaum(l); } Die Turtle muss dazulernen. – Wir haben aber keinen Zugriff auf die Klasse Turtle im Paket turtle. Reklursive Grafiken

7 Die Turtle erweiteren Wir bauen eine Klasse RekursionsTurtle, die von Turtle erbt. import turtle.*; public class RekursionsTurtle extends Turtle{ public RekursionsTurtle(TurtleWindow tWin){ super(tWin); } public void zeichneBinaerBaum(double l){ if (l>1){ forward(-l); right(90); forward(l); left(90); zeichneBinaerBaum(l/2); right(90); forward(-2*l); left(90); right(90); forward(l); left(90); forward(l); Merke: Die erweiterte Klasse muss im gleichen Ordner liegen, in dem die Klasse liegt, die sie benutzt, es sei denn ein Classpath ist extra gesetzt Reklursive Grafiken

8 public class Binaerbaum extends TurtleFrame {
import turtle.*; import java.awt.*; public class Binaerbaum extends TurtleFrame { RekursionsTurtle t1; public Binaerbaum(String title) { super(title); t1 = new RekursionsTurtle(tWin); } public void zeichne() { double l = 100; t1.jumpTo(0,150); t1.zeichneBinaerBaum(l); public static void main (String[] args) { new Binaerbaum("Binärbaum"); Binärbaum.java Reklursive Grafiken

9 Sierpinski-Dreieck Reklursive Grafiken

10 public void zeichneSierpinski(double l){ if (l>1) { forward(l);
Siepinski-Dreieck public void zeichneSierpinski(double l){ if (l>1) { forward(l); zeichneSierpinski(l/2); forward(-l); right(120); forward(l); left(120); left(60); forward(l); left(60); forward(l); right(120); right(60); forward(l); left(60); } Reklursive Grafiken


Herunterladen ppt "Rekursive Grafiken Reklursive Grafiken."

Ähnliche Präsentationen


Google-Anzeigen