[Back to TURTLE SWAG index] [Back to Main SWAG index] [Original]

    (* ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
       ³ Programated by Vladimir Zahoransky                        ³
       ³                Vladko software                            ³
       ³ Contact      : zahoran@cezap.ii.fmph.uniba.sk             ³
       ³ Program tema : General version of Spirals colorsorted     ³
       ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ *)

    { This program modify rekpic09.pas and draw general spirals in color
      sorted system. This is very easy to undestand. The color = meter of
      bring intro rekusion mod level of spirale. Easy to undestand and
      very praktical.
    }

    Uses Okor;

    Const Distance=3;
             Level=5;

    Var poc:integer;

    Type Mykor=Object(Kor)
               Procedure Spirala_No_rek(s:Real);
               Procedure Spirala_rek(s:Real);
               Procedure Spirala_rek1(s:Real);
               End;

    Procedure Mykor.Spirala_No_rek(s:Real);
    Var i:integer;
    Begin
    poc:=0;
    Repeat
    Inc(poc);
    ZmenFp(1+poc mod Level);
    dopredu(s);
    Vlavo(360/Level);
    s:=s+distance;
    Until s>1440/Level;
    End;

    Procedure Mykor.Spirala_rek(s:Real);
    Var i:integer;
    Begin
    If s>1440/Level Then
             Else Begin
                  inc(poc);
                  ZmenFp(1+poc mod Level);
                  Vlavo(360/Level);
                  Dopredu(s);
                  Spirala_rek(s+Distance);
                  End;
    End;

    Procedure Mykor.Spirala_rek1(s:Real);
    Var i:integer;
    Begin
    If s<Distance Then
                  Else Begin
                       Inc(poc);
                       ZmenFp(1+poc mod Level);
                       Dopredu(s);
                       Vlavo(360/Level);
                       Spirala_rek1(s-Distance);
                       End;
    End;

    Var M:MyKor;
    Begin
    With M do Begin
              Init(-320,230,0);
              Pis('Rekusion version of spirala 1.');
              PresunXY(0,0);
              Poc:=0;
              Spirala_rek(1);
              CakajKlaves;
              Zmaz1;

              Init(-320,230,0);
              Pis('Rekusion version of spirala 2.');
              PresunXY(-50,240);
              Vlavo(90+360/Level);
              Poc:=0;
              Spirala_rek1(1440/Level);
              CakajKlaves;
              Zmaz1;

              Init(-320,230,0);
              Pis('Norekusion version of spirala.');
              PresunXY(0,0);
              Spirala_No_rek(1);
              CakajKlaves;
              Koniec;
              End;

    End.

[Back to TURTLE SWAG index] [Back to Main SWAG index] [Original]