import java.awt.*;
import java.applet.*;

public class LinienKoch extends Applet
{ 
  Turtle t;
  public void paint(Graphics g)
  {
    t = new Turtle(this,100, 225, 0);
    zeichne();
  }

  void zeichne()
  {
    t.drehe(90);
    zeichneLinienKoch(7,150);
  } // zeichne

  void zeichneLinienKoch(int stufe, double laenge)
  {
    for (int i=1; i<=4; i++)
    {
      zeichneZackenkurve(stufe, laenge);
      t.drehe(-90);                     // rechts herum
    }
  } // zeichneLinienKoch

  void zeichneZackenkurve(int stufe, double laenge)
  {
    double teillaenge1=laenge/2.0;
    double teillaenge2=laenge/2.5;
    if (stufe>1)
         {
           zeichneZackenkurve(stufe-1, teillaenge1);
           t.drehe(-90);
           zeichneZackenkurve(stufe-1, teillaenge2);
           t.drehe(180);
           zeichneZackenkurve(stufe-1, teillaenge2);
           t.drehe(-90);
           zeichneZackenkurve(stufe-1, teillaenge1);
         }
    else {
           t.vor(laenge);
         }
  } // zeichneZackenkurve


} // class LinienKoch

