home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / crm_demo / p_pascal / turtle / koch.pas < prev    next >
Pascal/Delphi Source File  |  1992-05-27  |  701b  |  40 lines

  1. PROGRAM Koch;
  2.  
  3. USES Turtles;
  4.  
  5. TYPE    TurtleGraphik    =    OBJECT(Turtle)
  6.                                 PROCEDURE Koch(Grad, Seite : WORD);
  7.                             END;
  8.  
  9. PROCEDURE TurtleGraphik.Koch(Grad, Seite : WORD);
  10. VAR    NeuSeite    : WORD;
  11. BEGIN
  12.     IF Grad = 0 THEN
  13.         Forward(Seite)
  14.     ELSE
  15.     BEGIN
  16.         DEC(Grad);
  17.         NeuSeite    := Seite DIV 3;
  18.         SELF.Koch(Grad, NeuSeite);
  19.         Right(60);
  20.         SELF.Koch(Grad, NeuSeite);
  21.         Left(120);
  22.         SELF.Koch(Grad, NeuSeite);
  23.         Right(60);
  24.         SELF.Koch(Grad, NeuSeite)        
  25.     END
  26. END;
  27.  
  28. VAR    MyTurtle    : TurtleGraphik;
  29.  
  30. BEGIN
  31.     MyTurtle.Init;
  32.     IF NOT(MyTurtle.Error) THEN
  33.     BEGIN
  34.         MyTurtle.Default(975, 0, 180);
  35.         MyTurtle.Hide;
  36.         MyTurtle.Koch(4, 2000);
  37.         MyTurtle.Show;
  38.         MyTurtle.Done
  39.     END
  40. END.