Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

© 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 1 rekursive Grafiken.

Ähnliche Präsentationen


Präsentation zum Thema: "© 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 1 rekursive Grafiken."—  Präsentation transkript:

1 © 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 1 rekursive Grafiken

2 © 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 2 Beispiele für Grafische Rekursionen

3 © 2004 Pohlig Turtle © 2003 Taulien 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"); }

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

5 © 2004 Pohlig Turtle © 2003 Taulien 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); }

6 © 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 6 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.

7 © 2004 Pohlig Turtle © 2003 Taulien 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); zeichneBinaerBaum(l/2); 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

8 © 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 8 Binärbaum.java 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"); }

9 © 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 9 Sierpinski-Dreieck

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


Herunterladen ppt "© 2004 Pohlig Turtle © 2003 Taulien Reklursive Grafiken 1 rekursive Grafiken."

Ähnliche Präsentationen


Google-Anzeigen